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ディレクティブの使い方(1)

ErrorLog ディレクティブを使ってログファイルの名前として "logs/error.log" を設定しています。

実際のファイルを確認してみると次のようにエラーログが記録されていることが確認できます。

ErrorLogディレクティブの使い方(2)

ErrorLogディレクティブの使い方(3)

エラーログファイルの名前を設定する

ではエラーログファイルの名前を変更してみます。 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"

エラーログファイルの名前を設定する(1)

httpd.conf ファイルを保存したら Apache を再起動してください。

その後、エラーが発生するような操作をしたあとで log ディレクトリを見てみると、先ほど設定した error_log_file.log という名前でエラーログファイルが作成されているのが確認できます。

エラーログファイルの名前を設定する(2)

-- --

ErrorLog ディレクティブを使って Apache で発生したエラーを記録するログのファイル名を設定する方法について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。