- 締切済み
Fedoracore3のApatchとCGI
Fedoracore3のDVDISOをインストールしてほぼデフォルトの設定でApatchを起動しました。 そしてKENT-WEBさんのCGI、シンプル掲示板を使おうと試みたのですが書き込みボタンを押すと 【ERROR ! Write Error: ./askalog.cgi 】 と表示され書き込みができません。 他の掲示板も同様の感じでした。 そして属性の設定をKENT-WEBさんの指定どおりに行って、PerlのパスはFedoracore3のデフォルトの[ #!/usr/bin/perl]を指定しました。 Windows環境下のApatchでは動作確認できました。 どなたかこの症状を解決する方法をご存知のかたがいらっしゃいましたらご伝授お願いできないでしょうか?
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- winnie_pooh
- ベストアンサー率0% (0/0)
私も初心者ですので念のため。 FedoraCore3はデフォルトではSELinuxが有効になります。これは「アクセス制御をきちんと行う」というものですが、httpd(apache)でCGIが制御するとき、アクセス制御に引っかかってファイルが書き込めなくなることがあります。 SELinuxが原因かどうか切り分ける方法があるそうです。 参照URLに記載されていますので、一度ご覧ください。
- e2101183
- ベストアンサー率16% (1/6)
ApacheのErrorログは見ましたでしょうか? suexec関連でエラーが出ている場合、パーミッションの設定が777では強すぎる(?)場合があります。 CGIをユーザ権限でのみ読み書き実行出来るようにすると動くかもしれません。 (mod_perl関連で上記対処をして動かしたことがあります)
- senteru
- ベストアンサー率50% (1/2)
当方Fedora使ってないので確認のしようがないですが・・・ >【ERROR ! Write Error: ./askalog.cgi 】 >と表示され書き込みができません。 多分アクセス権限の問題では?? Apacheがwwwというユーザーで動いているのにそのユーザーではログファイルに書き込みができないとか。 ※ユーザー名とか適当です。httpd.conf見て確認してみてください。 一度パーミッションの確認をしてみてはどうでしょうか??
補足
>一度パーミッションの確認をしてみてはどうでしょうか?? ためしにすべて属性777にしてみて実験したのですが、やはり同じメッセージが表示されます。 >※ユーザー名とか適当です。httpd.conf見て確認してみてください。 /etc/httpd/conf/httpd.confこのファイルですよね? <Directory "/var/www/cgi-bin"> AllowOverride None Options ExecCGI Order allow,deny Allow from all AddHandler image .gif .jpg </Directory> この設定にしています。 おかしいところ、他にかえるべきところはあるでしょうか? >Apacheがwwwというユーザーで動いているのに・・ これはhttpd.confの変更ということでしょうか? Linuxの経験が浅いので言葉が理解しにくいかもしれません。