web-dev-qa-db-ja.com

* .domain.comシナリオで要求されたホスト名をキャッチするためのログフォーマット?

* .example.com ServerNameが付いたApache 2.2 VirtualHostがあります。これは私のシナリオに必要です。すべてのサブドメインは同じサイトで処理されます。

ここで、アクセスログで、_要求されたドメイン名を記録できるLogFormat変数(または方法)を見つけようとしています。 vhost_combined形式、アクセスログで取得するすべては* .example.comエントリであり、要求された実際の仮想ホストではありません。

誰でもこれを行う方法を知っていますか?

6
Dhiraj Gupta

%{headername}iを使用して任意のヘッダーの内容をLogFormatディレクティブに入れることができるため、%{Host}iは、クライアントが要求のHost:ヘッダーに入れたものを提供し、正確に必要なものを提供します。

http://httpd.Apache.org/docs/2.2/mod/mod_log_config.html のドキュメントを参照してください

15

あなたが使用しているときvhost_combinedログフォーマット:

CustomLog ${Apache_LOG_DIR}/access.log vhost_combined

vhost_combinedを追加して%{Host}i、例:.

LogFormat "%v:%p %h %l %u %t %{Host}i \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
3
kqw