Apache2.2.9 + mod_perl (2.0.3) + Gentoo 2008.0

Решил посмотреть на mod_perl, в своей любимой системе скомандовал emerge mod_perl Перегрузил apache, после чего по идее в /cgi-bin содержимое должно обрабатываться через ModPerl::PerlRun, а в /perl через ModPerl::Registry. Но у меня apache просто отдает содержимое скрипта (*.pl) при этом cgi файлы выполняются как задумано.

Есть такая штука perl-status.
Правим /etc/apache2/modules.d/75_mod_perl.conf

<Location /perl-status>
        SetHandler perl-script
        PerlResponseHandler Apache2::Status
        Order deny,allow
        Deny from all
        Allow from 127.0.0.1
        Allow from <your_address>
</Location>

Не забываем перегрузить apache, после чего нам становится доступен perl-status по пути
http://< your_address >/perl-status

По ссылке "Loaded Modules" список модулей, если нажатьна любой из них, у меня ругалось на Devel::Symdump и предалагало ставить из CPAN.

Ставим из портажей.

Quote:

$ emerge -pv Devel-Symdump
# emerge Devel-Symdump

Не забываем перегрузить apache, после этого у меня скрипты из /perl и /cgi-bin c разширением *.pl стали выполняться, теперь надо понять выполняются они через mod_perl или же просто через mod_cgi.

Привет! Делаетс

Привет!

Делается это очень просто:)

#!/usr/bin/perl
print "Content-type: text/html\n\n";
print $a++;

При повторяющихся запросах к скрипту mod_perl будет выдавать увеличивающуюся на 1 последовательность. Это происходит потому, что скрипт уже скомпилирован и находится в памяти вместе со всеми переменными.
CGI окружение тебе, конечно, так не даст:)

Все таки не

Все таки не работает mod_perl. Вот мне инетерсно, где оно из коробки работает ? Почему с PHP5 так все гладко, сравится легко и СРАЗУ работает, без лишних телодвижений..
------------------

#!/usr/bin/perl
print("goto rulez!!!!!!1");

Пример моего

Пример моего конфига, который был по умолчанию. Я исправил только пути под себя

Alias /run /var/www/host/www/run
<Directory /var/www/host/www/run>
    SetHandler perl-script
    PerlResponseHandler ModPerl::Registry
    PerlOptions +ParseHeaders
    Options +ExecCGI
</Directory>

fu7ur3 написал
Почему с PHP5 так все гладко, сравится легко и СРАЗУ работает, без лишних телодвижений..

Политически некорректные посты буду удалять:)

rofl

rimas написал
Политически некорректные посты буду удалять:)

subj

кста. наработки по mod_perl, если не сложно освещай хотя бы в кратце.
Я в ближайшем будущем собираюсь плотно знакомится с этим зверем, буду очень признателен

В вики я пишу но пока в оффлайне - сейчас проблемма со временем — сплю часов по 5 в сутки,
без выходных :(

rimas, сделал как

rimas, сделал как ты написал, все равно не работает почему-то.

Quote:

При повторяющихся запросах к скрипту mod_perl будет выдавать увеличивающуюся на 1 последовательность. Это происходит потому, что скрипт уже скомпилирован и находится в памяти вместе со всеми переменными.

Можешь сделать страничку, где-нибудь на своем сервере, чтобы посмотреть как оно будет работать ?

------------------

#!/usr/bin/perl
print("goto rulez!!!!!!1");

Пример

Привет!

Ссылку тебе отправил. Не забывай, что у тебя есть несколько потоков Apache и у каждого - свой perl:) Так что нужно refresh нажимать несколько раз.