ErrorLogディレクティブ:エラーログファイルの名前を設定する
Apache ではクライアントからのアクセス情報を記録するログとは別に、 Apache で発生したエラーを別のログファイルに記録します。ここでは ErrorLog ディレクティブを使って Apache で発生したエラーを記録するログのファイル名を設定する方法について解説します。
(Last modified: )
ErrorLogディレクティブの使い方
エラーを記録するログファイルの名前を設定するには ErrorLog ディレクティブを使用します。書式は次のとおりです。
ErrorLog エラーログファイル名
記述できる場所は httpd.conf, VirtualHost です。
ログファイルの名前は ServerRoot からの相対パスを使って指定します。例えば ServerRoot のディレクトリの中の logs ディレクトリにある error.log という名前にする場合、ログファイル名は logs/error.log となります。( ServerRoot については「ServerRootディレクティブ:相対パスの起点となるApacheがインストールされているディレクトリ」を参照されてください)。
ErrorLog logs/error.log
httpd.conファイルでの記述
httpd.conf ファイルではデフォルトで次のように記述されれています。
# # ErrorLog: The location of the error log file. # If you do not specify an ErrorLog directive within a < VirtualHost> # container, error messages relating to that virtual host will be # logged here. If you *do* define an error logfile for a <VirtualHost> # container, that host's errors will be logged there and not here. # ErrorLog "logs/error.log"
ErrorLog ディレクティブを使ってログファイルの名前として "logs/error.log" を設定しています。
実際のファイルを確認してみると次のようにエラーログが記録されていることが確認できます。
エラーログファイルの名前を設定する
ではエラーログファイルの名前を変更してみます。 httpd.conf ファイルを開き、先ほどの場所を次のように変更してください。
#
# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a < VirtualHost>
# container, error messages relating to that virtual host will be
# logged here. If you *do* define an error logfile for a <VirtualHost>
# container, that host's errors will be logged there and not here.
#
ErrorLog "logs/error_log_file.log"
httpd.conf ファイルを保存したら Apache を再起動してください。
その後、エラーが発生するような操作をしたあとで log ディレクトリを見てみると、先ほど設定した error_log_file.log という名前でエラーログファイルが作成されているのが確認できます。
-- --
ErrorLog ディレクティブを使って Apache で発生したエラーを記録するログのファイル名を設定する方法について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
プログラミングや開発環境構築の解説サイトを運営しています。