7 configuration apache2 logging 12.04
我查看了(快速阅读)Apache 模块 mod_log_config并且无法弄清楚 apache2 默认日志格式是什么以及在哪里定义它。任何的想法?
请注意,什么是
/etc/apache2/conf.d/other-vhosts-access-log
不是默认选项而是全局选项。
对于 Ubuntu 16.04,您可以在此处找到全局配置文件:
/etc/apache2/apache2.conf
Run Code Online (Sandbox Code Playgroud)
其中定义了一些LogFormat
指令。
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
Run Code Online (Sandbox Code Playgroud)
开箱即用的虚拟主机配置文件在这里:
/etc/apache2/sites-available/000-default.conf
Run Code Online (Sandbox Code Playgroud)
在里面你会发现它声明:
CustomLog ${APACHE_LOG_DIR}/access.log combined
Run Code Online (Sandbox Code Playgroud)
该combined
别名是指第二个LogFormat
在上述全局配置:
"%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\""
Run Code Online (Sandbox Code Playgroud)
TransferLog语句的文档中明确指出:
该指令与 CustomLog 指令具有完全相同的参数和效果,不同之处在于它不允许显式指定日志格式或对请求进行条件记录。相反,日志格式由最近指定的未定义昵称的 LogFormat 指令确定。如果未指定其他格式,则使用通用日志格式。
转到LogFormat语句:
默认值: LogFormat "%h %l %u %t \"%r\" %>s %b"
因此,如果在TransferLog
没有任何LogFormat
语句的情况下给出语句,则输出格式如上所述。
如果还TransferLog
缺少该语句,则不会写入访问日志。
归档时间: |
|
查看次数: |
13404 次 |
最近记录: |