nDiki : CGI プログラムが動かない
CGI プログラムが動かない
UNIX系 OS 上の Apache での場合の経験的チェックポイント
1. プログラムは正しく動くものか?
- プログラムに実行権限があるか?
- スクリプトならば、shebang (#!) が正しく設定されているか?
- スクリプトに文法エラーはないか?
- コンソールから実行して動くか?
- 環境の関係でコンソールから実行してもうまく動かないスクリプトもあるので、ここで動かなくても必ずしも問題とはいえないが、文法エラー等があればひっかかる可能性が高い。
- 正しい HTTP ヘッダを出力している?
2. CGI プログラムのあるディレクトリで、CGI を許可するように Apache を設定してあるか?
Apache の全体設定あるいは、.htaccess での設定は正しいか?
- そのディレクトリは ScriptAlias ディレクティブで指定されたディレクトリか? あるいは Options ディレクティブで +ExecCGI されているか?
- .htaccess で Options ディレクティブを使う場合、メインの設定ファイルの中の当該 <directory>ディレクティブ内の AllowOverride で Options の上書きが許可されているか?
- AddHandler や SetHandler ディレクティブによって cgi-script ハンドラが可能になっている?
- .htaccess で これらのディレクティブを使う場合、メインの設定ファイルの中の当該 <directory>ディレクティブ内の AllowOverride で FileInfo の上書きが許可されているか?
(参考: CGI による動的コンテンツ)
3. suEXEC のチェックにひっかかっていないか?
- suexec.log に何か警告が出ていないか?
- directory is writable by others: と出ていればディレクトリが、グループ書き込み権限やその他のユーザにより書き込み可能になっている。(→ http://httpd.apache.org/.../suexec.html ) CGI プログラムのあるディレクトリおよび、そのディレクトリへのパスの途中の各ディレクトリの権限を確認する。
- target uid/gid (aaaa/bbbb) mismatch with directory (cccc/dddd) or program (eeee/ffff) と出ていれば uid / gid が正しくない (aaaa、bbbb、cccc、dddd は数字列)。
スポンサード リンク
Related term
■注目キーワード
購入 買った 発売日 フリー 無料 価格 値段 作り方 選び方 使い方 方法 設定 サンプル ダウンロード 限定 在庫 予約 穴場 比較 検証 レビュー 感想 評価 評判 使用感 使ってみた 口コミ 噂 最新 MP3 動画 意味 お薦め お勧め おすすめ 便利 Blog ブログ mixi 修理 デザイン ビックカメラProcess Time: 0.203558s / load averages: 0.29, 0.30, 0.30
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)



