とあるエンジニアの闇歴史帳

コピペで使える便利Wiki ※現在構築中です。

ユーザ用ツール


サイドバー

言語

サーバ関連

ツール

API

読み物

その他

perl:cgi_carp_fatalstobrowser

異常終了した際にエラーメッセージを表示したい - Perl

この記事は2007年05月17日に書かれた物です

実行している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;

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

関連書籍

failed to fetch data: unkown error

failed to fetch data: unkown error

failed to fetch data: unkown error

関連ページ

perl/cgi_carp_fatalstobrowser.txt · 最終更新: 2020/06/23 14:10 (外部編集)