Назад | Перейти на главную страницу

BugZilla: добавление PerlConfigRequire в apache2 conf вызывает ошибки при перезапуске службы

Я слежу за BugZilla документация по установке и используя mod_perl w / apache2. Все прошло довольно гладко, и страницы bugzilla, похоже, отображаются и обслуживаются правильно, но теперь я получаю сообщение об ошибке при перезапуске apache, и множество ошибок появляется в журнале ошибок для виртуального хоста каждый раз, когда страница загружается.

Это началось после того, как я добавил эти две строки, которые, как говорится в документации, нужно добавить перед любыми другими директивами mod_perl, поэтому я поместил их в верхней части моего httpd.conf.

PerlSwitches -w -T
PerlConfigRequire /var/www/bugzilla/mod_perl.pl

Теперь, когда apache2 перезапущен, я получаю это.

bugzilla01 ~: service apache2 restart
 * Restarting web server apache2
    Binary file (standard input) matches
 ... waiting Return::Value is deprecated at /var/www/bugzilla/lib/Return/Value.pm line 13
    require Return/Value.pm called at /var/www/bugzilla/lib/Email/Send.pm line 11
    Email::Send::BEGIN() called at /var/www/bugzilla/lib/Return/Value.pm line 0
    eval {...} called at /var/www/bugzilla/lib/Return/Value.pm line 0
    require Email/Send.pm called at /var/www/bugzilla/Bugzilla/Mailer.pm line 51
    Bugzilla::Mailer::BEGIN() called at /var/www/bugzilla/lib/Return/Value.pm line 0
    eval {...} called at /var/www/bugzilla/lib/Return/Value.pm line 0
    require Bugzilla/Mailer.pm called at /var/www/bugzilla/Bugzilla/Auth.pm line 35
    Bugzilla::Auth::BEGIN() called at /var/www/bugzilla/lib/Return/Value.pm line 0
    eval {...} called at /var/www/bugzilla/lib/Return/Value.pm line 0
    require Bugzilla/Auth.pm called at /var/www/bugzilla/Bugzilla.pm line 40
    Bugzilla::BEGIN() called at /var/www/bugzilla/lib/Return/Value.pm line 0
    eval {...} called at /var/www/bugzilla/lib/Return/Value.pm line 0
    require Bugzilla.pm called at /var/www/bugzilla/mod_perl.pl line 44
    Bugzilla::ModPerl::BEGIN() called at /var/www/bugzilla/lib/Return/Value.pm line 0
    eval {...} called at /var/www/bugzilla/lib/Return/Value.pm line 0
    require /var/www/bugzilla/mod_perl.pl called at (eval 2) line 1
    eval 'require q/var/www/bugzilla/mod_perl.pl
;' called at /var/www/bugzilla/lib/Return/Value.pm line 0

Множество ошибок, которые я получаю при загрузке домашней страницы

[Fri Feb 15 13:09:34 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:34 2013] Value.pm: Return::Value is deprecated at lib/Return/Value.pm line 13, referer:  bugzilla.domain.net/
[Fri Feb 15 13:09:34 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:34 2013] Value.pm: \trequire Return/Value.pm called at lib/Email/Send.pm line 11, referer:  bugzilla.domain.net/
[Fri Feb 15 13:09:34 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:34 2013] Value.pm: \tEmail::Send::BEGIN() called at lib/Return/Value.pm line 0, referer:  bugzilla.domain.net/
[Fri Feb 15 13:09:34 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:34 2013] Value.pm: \teval {...} called at lib/Return/Value.pm line 0, referer:  bugzilla.domain.net/
[Fri Feb 15 13:09:34 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:34 2013] Value.pm: \trequire Email/Send.pm called at Bugzilla/Mailer.pm line 51, referer:  bugzilla.domain.net/
[Fri Feb 15 13:09:34 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:34 2013] Value.pm: \tBugzilla::Mailer::BEGIN() called at lib/Return/Value.pm line 0, referer:  bugzilla.domain.net/
[Fri Feb 15 13:09:34 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:34 2013] Value.pm: \teval {...} called at lib/Return/Value.pm line 0, referer:  bugzilla.domain.net/
[Fri Feb 15 13:09:34 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:34 2013] Value.pm: \trequire Bugzilla/Mailer.pm called at Bugzilla/Auth.pm line 35, referer:  bugzilla.domain.net/
[Fri Feb 15 13:09:34 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:34 2013] Value.pm: \tBugzilla::Auth::BEGIN() called at lib/Return/Value.pm line 0, referer:  bugzilla.domain.net/
[Fri Feb 15 13:09:34 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:34 2013] Value.pm: \teval {...} called at lib/Return/Value.pm line 0, referer:  bugzilla.domain.net/
[Fri Feb 15 13:09:34 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:34 2013] Value.pm: \trequire Bugzilla/Auth.pm called at Bugzilla.pm line 40, referer:  bugzilla.domain.net/
[Fri Feb 15 13:09:34 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:34 2013] Value.pm: \tBugzilla::BEGIN() called at lib/Return/Value.pm line 0, referer:  bugzilla.domain.net/
[Fri Feb 15 13:09:34 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:34 2013] Value.pm: \teval {...} called at lib/Return/Value.pm line 0, referer:  bugzilla.domain.net/
[Fri Feb 15 13:09:34 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:34 2013] Value.pm: \trequire Bugzilla.pm called at /var/www/bugzilla/index.cgi line 34, referer:  bugzilla.domain.net/
[Fri Feb 15 13:09:34 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:34 2013] Value.pm: \tmain::BEGIN() called at lib/Return/Value.pm line 0, referer:  bugzilla.domain.net/
[Fri Feb 15 13:09:34 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:34 2013] Value.pm: \teval {...} called at lib/Return/Value.pm line 0, referer:  bugzilla.domain.net/
[Fri Feb 15 13:09:35 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:35 2013] Value.pm: Return::Value is deprecated at lib/Return/Value.pm line 13
[Fri Feb 15 13:09:35 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:35 2013] Value.pm: \trequire Return/Value.pm called at lib/Email/Send.pm line 11
[Fri Feb 15 13:09:35 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:35 2013] Value.pm: \tEmail::Send::BEGIN() called at lib/Return/Value.pm line 0
[Fri Feb 15 13:09:35 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:35 2013] Value.pm: \teval {...} called at lib/Return/Value.pm line 0
[Fri Feb 15 13:09:35 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:35 2013] Value.pm: \trequire Email/Send.pm called at Bugzilla/Mailer.pm line 51
[Fri Feb 15 13:09:35 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:35 2013] Value.pm: \tBugzilla::Mailer::BEGIN() called at lib/Return/Value.pm line 0
[Fri Feb 15 13:09:35 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:35 2013] Value.pm: \teval {...} called at lib/Return/Value.pm line 0
[Fri Feb 15 13:09:35 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:35 2013] Value.pm: \trequire Bugzilla/Mailer.pm called at Bugzilla/Auth.pm line 35
[Fri Feb 15 13:09:35 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:35 2013] Value.pm: \tBugzilla::Auth::BEGIN() called at lib/Return/Value.pm line 0
[Fri Feb 15 13:09:35 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:35 2013] Value.pm: \teval {...} called at lib/Return/Value.pm line 0
[Fri Feb 15 13:09:35 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:35 2013] Value.pm: \trequire Bugzilla/Auth.pm called at Bugzilla.pm line 40
[Fri Feb 15 13:09:35 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:35 2013] Value.pm: \tBugzilla::BEGIN() called at lib/Return/Value.pm line 0
[Fri Feb 15 13:09:35 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:35 2013] Value.pm: \teval {...} called at lib/Return/Value.pm line 0
[Fri Feb 15 13:09:35 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:35 2013] Value.pm: \trequire Bugzilla.pm called at /var/www/bugzilla/search_plugin.cgi line 21
[Fri Feb 15 13:09:35 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:35 2013] Value.pm: \tmain::BEGIN() called at lib/Return/Value.pm line 0
[Fri Feb 15 13:09:35 2013] [error] [client 10.1.0.1] [Fri Feb 15 13:09:35 2013] Value.pm: \teval {...} called at lib/Return/Value.pm line 0

Я не проводил большого количества тестов на предмет того, ломает ли это что-нибудь, но в моей системе ошибки / предупреждения удаляются, если я редактирую файл по адресу:

/var/www/bugzilla/lib/Return/Value.pm

закомментировать строку:

#Carp::cluck "Return::Value is deprecated" unless $NO_CLUCK;

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

Переключатель Perl -w включает предупреждения. Это хорошо, когда вы пишете новый сценарий Perl, но может оказаться контрпродуктивным, если вы используете старый код, который, как вы полагаете, работает. В этом случае он извергает предупреждения об устаревшем синтаксисе.

Попробуйте удалить -w и посмотрите, проясняет ли это ситуацию.