プロが教えるわが家の防犯対策術!

Perlを使ったCGIを書いているときにテスト環境としてHTTPDでLOCALHOSTを
使ってテストしています。動作するかどうかは、これでわかりますが
動作しないときに何が悪いのか(たとえばセミコロンの書き忘れなど)
調べる方法、例えばCのLINT(文法をチェックする)のようなものは
どこかに無いでしょうか???

A 回答 (2件)

HTTPDのエラーログに出ていませんか?


ApacheWin32の例だと

[Sun Dec 03 12:19:27 2000] [error] [client 192.168.0.3] Not enough arguments for getnetbyname at c:/hp/cgi-bin/test.cgi line 7, near "getnetbyname;"

こんな感じでログに入っていると思います。
あとは Perl に直接ソースを指定してチェックさせる方法もあったと思います。
    • good
    • 0

通常テストしている環境は、Winですか?、Linuxですか?



Winの場合:
HTTPDを使ってテストしているとの事なので、Perlがインストール
されているでしょうから、
1)まず、DOSプロンプトを起動してください。
2)例えばC:¥perlにインストールしてある場合DOSプロンプト上で

set PATH=c:\perl\bin;%PATH%

としてパスを通してください。
(Dosプロンプトの起動バッチやC:ドライブのautoexec.bat等にパスを
通すように記述しておくと便利です。

3)次にそのファイルが置いてあるディレクトリに移動してください。
例:d:¥myhp¥cgiと言うところにスクリプトが置いてあるとき

d:
cd \myhp\cgi

とやって移動します。
4)そしてスクリプトを、DOSプロンプト上で動かしてください。
例:test.cgi というスクリプトをテストする場合

perl test.cgi

としてして下さい。また、

perl -w test.cgi

とすればより細かいワーニングが出るようになります。

Linuxの場合もほとんど同じで、CUI上でスクリプトを動かしてやれば
OKです。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!