CGI文法チェック

 せっかく Active Perlをインストールしたのですから、CGIとして動作させる前に、まず文法チェックをしましょう。まず、コマンドプロンプトを起動してください。そして、

perl -c スクリプト名

と入力し、エンターキーを押してください。スクリプト名の部分は、フルパスで入力しなければいけません。いちいち入力するのは面倒ですので、perl -cw と入力し、一つだけスペースを入れてから、CGIファイルのアイコンをコマンドプロンプト画面にドラッグ&ドロップしてもOKです。

C:\> perl -c "D:\Documents and Settings\futomi\デスクトップ\test.cgi"

な具合に表示されるはずです。エンターキーを押すと、文法チェックをしてくれます。問題なければ、

C:\Documents and Settings\futomi\デスクトップ\test.cgi syntax OK

と表示されます。もし文法上、問題があれば、

syntax error at D:\Documents and Settings\futomi\デスクトップ\test.cgi line 4, near "exit"
D:\Documents and Settings\futomi\デスクトップ\test.cgi had compilation errors.

のように英語ですが、表示されます。line 4 の部分にに注目してください。CGIファイルの4行目あたりで問題がありそうだと言っているのです。このようにして、問題点を見つけていくわけです。

配布されたCGIを利用される方であれば、主に設定箇所で間違いがあることが想定されます。もう一度、設定を見直してください。多分、Perlの文法ミスだと思われます。こちらにヒントを掲載しておりますので、ご参考にして下さい。

CGIをご自分で作成したり、改造したりした場合には、これでは不十分です。以下のとおり、-wスイッチもつけてチェックしましょう。

perl -cw スクリプト名

-w スイッチを使ってチェックすると、文法的には問題ないが、問題がありそうな警告を与えてくれます。一度しか使われなかった変数などが該当します。この場合には、おそらくスペルミスが想定されますので、問題なく動作しているかのように見えますが、正しく処理されていないことが考えられます。(例えば、計算ミスなど)

次のコーナーではよくある文法エラーと対処方法を紹介します。