トップ > サポート > 良くある質問 > 設置編(4)

Q. 設置直後に「500」というエラーメッセージが表示されます。

A. 何らか原因で「実行できません」というエラーメッセージです。

エラーメッセージはサーバによって異なりますが、「500」と表示されれば同様の原因が考えられます。
解決するには、次のポイントをチェックしてください。


■パーミッションを正しく設定したか?(*とてもよくあるミス)
CGIスクリプトに関係するファイルのパーミッションが正しく設定されていないと、「500」と表示され、CGIスクリプトとして実行できない場合があります。


■ファイル転送方法は正しかったか?(*よくあるミス)
FTPクライアントでサーバへファイル転送した際に、「転送モード」がCGIスクリプトに合っていないと、エラーになります。
転送モードを「自動判別」で、もう一度設置してください。


■スクリプト中に構文エラーはないか?(*よくあるミス)
スクリプト中に何らかの文法エラーがあった場合に、CGIスクリプトとして実行できません。
次のポイントをチェックしてください。

→ 構文エラーチェックポイント1
シングルクォートで囲まれている部分の、シングルクォートの片方を消してしまったり、シングルクォートで囲まれている部分の中にシングルクォートを書くとエラーになります。
○「'文字列'
×「'文字列
×「'文字'列'

→ 構文エラーチェックポイント2
セミコロン「;」で終わる行のセミコロンを取ってしまうとエラーになります。
○「$define->{'HOGE'} = 'hoge';
×「$define->{'HOGE'} = 'hoge'

→ 構文エラーチェックポイント3
スクリプト自体の構文に全角文字を使ってしまうと、エラーになります。スクリプト自体の構文は全て半角文字でなくてはなりません。見た目で判断しにくいエラーなので、ご注意ください。
○「$define->{'HOGE'} = 'hoge';
×「$define->{’HOGE’} = ’hoge’;


■Perlのパスは正しいか?(*よくあるミス)
Perlのパスは設置先のサーバごとに異なり、正しく設定されていないとCGIスクリプトとして実行できません。

CGIスクリプトの実行ファイルの先頭に「#!/usr/local/bin/perl」と書かれているのがPerlのパスです。Perlのパスは、サーバごとに異なり、正しく設定されていないとエラーになります。例えば、あるサーバでは「#!/usr/bin/perl」をPerlのパスに指定することで、この問題を解決できるかもしれません。

Perlのパスが不明な場合には、サーバ管理者へ問い合せてください。


■ファイルロック方法を正しく設定したか?
flock関数が使えないサーバで、flock関数を実行するとエラーになります。

ごく少数ですが、中にはflock関数が使えないサーバがあります。もし、利用中サーバのサポートページでflock関数利用が禁止と公開されていましたら、ファイルファイルロック方法の設定を変更する必要があります。詳しくはダウンロードページを参考に設定変更してください。



よくある質問一覧へ