文法チェック用の CGI としては kent さんの Perl Checker がありますが、
例えば以下のような CGI(test.cgi) だと (1行目は synapse の場合) syntax OK になってしまいます。

----
#!/www/bin/perl

$x=&xxx;

print<
test
$x
test

EOM

exit;

sub	xxxy{
	return 255;
}
----

しかしこの CGI には欠陥があって xxx などという関数は定義されてないのです。
そのため実行時エラーとなってしまいます。
パスの test.cgi のところに w.cgi を置いて w.cgi/test.cgi と書き換え、実行させてみると
Undefined subroutine &main::xxx called at ./test.cgi line 3.
とエラーメッセージがでます。

また sendmail などを呼び出していたりすると、その実行時エラーにもメッセージがでて
困ったことになります。
こういう時も w.cgi を使えば原因特定の手助けになります。

w.lzh


戻る