![在access_log中包含请求的主机名](https://linux22.com/image/586075/%E5%9C%A8access_log%E4%B8%AD%E5%8C%85%E5%90%AB%E8%AF%B7%E6%B1%82%E7%9A%84%E4%B8%BB%E6%9C%BA%E5%90%8D.png)
我希望我的 access_log 列出客户端正在请求的主机名(例如,当请求http://www.example.com/test我应该在日志中看到“www.example.com”)。到目前为止,我发现的唯一方法是在日志格式指令,但这只给出了“服务于请求的服务器的规范 ServerName”(如 Apache 在http://httpd.apache.org/docs/2.0/mod/mod_log_config.html#formats)。对于使用未在 ServerName 指令中指定的主机名的请求,这没有帮助。
有什么方法可以记录请求主机名?
谢谢
答案1
%...{Foobar}i Foobar 的内容:发送到服务器的请求中的标头行。其他模块(例如 mod_headers)所做的更改会影响此内容。
所以你的情况是
%{主机}i