急に自宅の Fedora core 3 を入れているサーバがエラーに。
処理が重かったのでハード的に再起動をかけたら、httpd が立ち上がらない。
起動すらしない。
[root@chapeau ~]# /etc/init.d/httpd restart
httpd を停止中: [失敗]
httpd を起動中: Syntax error on line 10 of /etc/httpd/conf.d/perl.conf:
Cannot load /etc/httpd/modules/mod_perl.so into server: /etc/httpd/modules/mod_perl.so: undefined symbol: Perl_Ippid_ptr
>> Syntax error on line 43 of /etc/httpd/conf.d/perl.conf:
Invalid command ‘PerlResponseHandler’, perhaps mis-spelled or defined by a module not included in the server configuration
>> Syntax error on line 44 of /etc/httpd/conf.d/perl.conf:
Invalid command ‘PerlOptions’, perhaps mis-spelled or defined by a module not included in the server configuration
よく分からないので、perl.conf を編集してみる。
# This will allow execution of mod_perl to compile your scripts to
# subroutines which it will execute directly, avoiding the costly
# compile process for most requests.
#
Alias /perl /var/www/cgi-bin
<Directory /var/www/cgi-bin>
SetHandler perl-script
# PerlResponseHandler ModPerl::Registry #(コメントアウト)
# PerlOptions +ParseHeaders #(コメントアウト)
Options +ExecCGI
</Directory>
Mod_Perl モジュールのディレクティブをコメントアウトしたら起動はできるようになったけど、cgi-bin の中の Perl プログラムが全てテキストで吐き出されるようになりましたヽ(;´д`)ノ
.htaccess で直接実行許可を与えているディレクトリのCGIは何の問題もなく動いています。
多分、当然の動きなんだろうけど・・・。
で、これどうしたら直るんでしょう・・・。
ログ見てみると Perl が自動アップデートされてるので、それが原因のような気がするんですが。
■(1)
###### LogWatch 5.2.2 (06/23/04) #########
Processing Initiated: Sun Dec 4 05:14:33 2005
Date Range Processed: yesterday
——————— up2date Begin ————————
Package Installed:
[‘perl-5.8.5-18.FC3’]
———————- up2date End ————————-
■(2)
Subject: Anacron job ‘cron.daily’
Date: Sun, 4 Dec 2005 07:08:56 +0900 (JST)
Name Version Rel
———————————————————-
perl 5.8.5 20.FC3 i386
Testing package set / solving RPM inter-dependencies…
perl-5.8.5-20.FC3.i386.rpm: Retrieved.
Preparing
Installing /var/spool/up2date/perl-5.8.5-20.FC3.i386.rpm…
※全然関係ありませんが、Anacron が動いたのを初めてみました。
コメント
Options +ExecCGI
AddType application/x-httpd-cgi .cgi
こう!
動きました! ありがとうございました。
肝心の mod_perl が動作していないみたいですが_| ̄|○