2009-09-24 3 views
1

Я пытаюсь использовать [PerlSection][1], чтобы получить имя сервера, а затем использовать его для настройки некоторых RewriteCond - RewriteRule пар и некоторых других вещей. Кажется, я не могу далеко зайти. Он говорит, что вы можете сделать это:Как настроить PerlSections в mod_perl2?

Apache2->httpd_conf("PerlPassEnv $key $val"); 

Но пытаться запустить Apache, я получаю эту ошибку синтаксиса:

"Can't locate object method "httpd_conf" via package "Apache2" 

Документах затем ссылаться на эти два файла я якобы могу найти в распределении, например,/httpd.conf.pl и, например,/perl_sections.txt, но the mod_perl2 distribution даже не имеет , например, а в исходном каталоге mod_perl, например, dir, нет ни одного из этих файлов.

Google не помог, так как «Ваш поиск - сайт perl_sections.txt: http://perl.apache.org/dist/ - не соответствует никаким документам» и без ограничения сайта все, что я вижу, помимо документов, - это одно сообщение, просящее об этих файлах скопировало все без ответа.

У кого-нибудь есть ресурсы для того, чтобы использовать <Perl> раздел?

ответ

2

Я чувствую вашу боль. Я использовал документы для получения некоторых обоснованных догадок для процесса проб и ошибок. Что в конечном итоге работало, толкало весь элемент конфигурации на массив @PerlConfig. Вот пример из моего ответа на вопрос completely different question:

<Perl> 
my @groups = qw/ foo bar baz /; 
foreach (@groups) { 
    push @PerlConfig, qq| <Directory /home/www/$_> blah </Directory> |; 
} 
</Perl> 
+0

О, ладно, эта часть документов на самом деле верна. Я попробовал $ ServerName, к которому они обращаются, и начал предполагать, что он был сфабрикован ...;) – Kev

+0

Большое спасибо, это очень полезно! – Kev

+0

извините за то, что вы убили мертвых, но я новичок в Perl, и я пытаюсь заставить эту работу работать ... Я получаю эту точную ошибку, но я не понимаю, что я должен делать. его все новое для меня, я не хочу ничего сломать. Можете ли вы направить меня в проблему, чтобы я мог искать больше? – TheHidden