« タグクラウド(TagCloud)を簡単に生成する | メイン | SHA1の値を取得する »

カテゴリー:デバグ 

エラーを表示する

このエントリーを含むはてなブックマーク  livedoorクリップ  エラーを表示するをdel.icio.usに追加  エラーを表示するをYahoo!ブックマークに追加  エラーを表示するをニフティクリップに追加

実行しているCGIに致命的なエラーが発生した際に通常は「500 Internal Server Error」となり異常終了するところを、エラーメッセージなどを表示したい。CGI::Carpモジュールを利用すれば良い。

使い方は非常にシンプルで、CGI::Carpモジュールをuseする際に'fatalsToBrowser'を渡してやれば良い。

;#
;#異常終了時にエラーメッセージを表示する
;#

use strict;
use CGI::Carp qw(fatalsToBrowser);

#-- わざと異常終了  --#
die('debug now');


もしくは次のような簡単なCGIをあらかじめ設置、別ウィンドウで実行しておきエラーが発生したら再読み込みといった方法もある。以下はLinux + Apacheの例。
#!/usr/bin/perl

;#
;#エラーログを表示
;#

use strict;

#--エラーログの場所--#
my $error_log = '/usr/local/apache/logs/error_log';

#--エラーログ表示--#
print "Content-type: text/plain\n\n";
print `tail $error_log`;

exit;


もちろんエラーログを読める権限が必要なので実行の際はご確認を。




トラックバック

このエントリーのトラックバックURL:
http://katsubemakito.net/mt/mt-tb.cgi/622






クリエイティブ・コモンズ・ライセンス
このブログは、次のライセンスで保護されています。 クリエイティブ・コモンズ・ライセンス.