«前の日記(2005-03-03) 最新 次の日記(2005-03-05)» 編集

いがいが日記


2005-03-04 [長年日記]

_ [linux][apache] シンボリックリンクを辿らない。

FC3のapache2でおおはまり。 CGIを実体でアクセスすると実行できるのだが、 シンボリックリンクでアクセスすると
/var/log/httpd/error_log
"Premature end of script"
と出てらちがあかない。 /etc/httpd/conf/httpd.confのFollowSymLinksとかExecCGIとかSymLinksIfOwnerMatchとか疑ってみるけど一向に直らない。 ネットで調べたところ、 どうやらFC3のapacheはsuExecというセキュリティモジュールがONになっていて、 この状態だとこのエラーが起こるようだ。
#!/usr/bin/env ruby
require 'index.rb'
シンボリックリンクの代わりに↑とかやればできるらしいのだが、 社内サーバなのでセキュリティよりも管理コストを下げたい。 ぶっちゃけ今までと同じように使いたい。のでsuExecをOFFにした。↓このファイルを削除して、apacheを再起動すれば良いすればいいらしい。
/usr/sbin/suexec
/usr/sbin/suexecをsuexec.disableなどへリネーム。 一応、httpd.confのsuexecモジュールを組み込んでいる行もコメントアウトしておく。
 httpd.conf
 #LoadModule suexec_module modules/mod_suexec.so
 apache再起動
 # apachectl restart
ところで↑と↓とどっちがいいのかな?同じだったらいいのだけど。
# /etc/init.d/httpd restart
んで、やっと今までと同じディレクトリ構成でtdiaryが動きました。(^^)

«前の日記(2005-03-03) 最新 次の日記(2005-03-05)» 編集