apacheでは、デフォルトでアクセスログなどを記録してくれますが
そこに例えばリファラー情報などは含まれません。
apacheの設定ファイルを変更すれば、記録する情報を任意にカスタマイズすることができます。
カスタムログの作成
ここでは例として、リファラー情報とリクエストURLを記録するカスタムログを作成してみます。
httpd.confを開き、<IfModule log_config_module>というディレクティブを探します。
※IfModuleディレクティブは消しておいたほうがいいという説があるようですが、
ここではそれについては割愛します。
デフォルトでは以下のようになっているはずです。(違う場合は環境によると思ってください)
<IfModule log_config_module>
#
# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
#
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
<IfModule logio_module>
# You need to enable mod_logio.c to use %I and %O
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>
#
# The location and format of the access logfile (Common Logfile Format).
# If you do not define any access logfiles within a <VirtualHost>
# container, they will be logged here. Contrariwise, if you *do*
# define per-<VirtualHost> access logfiles, transactions will be
# logged therein and *not* in this file.
#
CustomLog logs/access_log common
#
# If you prefer a logfile with access, agent, and referer information
# (Combined Logfile Format) you can use the following directive.
#
#CustomLog logs/access_log combined
</IfModule>
※combinedという設定が既にリファラーを記録するフォーマットになっていますので、
設定するのが面倒な場合はこちらを使用してください。
続きを読む…»