1、# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf 修改日志文件为:
ErrorLog "logs/test.com-error_log" 错误日志 CustomLog "logs/test.com-access_log" combined 访问日志 相对路径
Apache的common日志格式定义: # vim /usr/local/apache2/conf/httpd.conf <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> %h:客户机的IP地址 %l:客户机登陆名称 %u:认证用户 %t:访问的日期、时间 %r:客户访问的方式,访问的什么资源,什么协议 %>s 请求对应的状态码 #2开头正常,3开头被重定向,4开头客户端存在错误,5开头服务器端遇到错误 %b:传送的字节数 %{Referer}: 从哪个页面来的(比如从百度搜索到的QQ空间,那Referer就是百度 %{User-Agent}:客户用的什么浏览器 # tail -10 test.com-access_log 192.168.101.175 - - [01/Dec/2015:14:36:52 +0800] "GET /misc.php?mod=patch&action =pluginnotice&inajax=1&ajaxtarget=plugin_notice HTTP/1.1" 200 63
每天都会有大量的日志,该怎么处理呢? # vim /usr/local/apache2/conf/extra/httpd-vhosts.conf ErrorLog "logs/test.com-error_log" CustomLog "|/usr/local/apache2/bin/rotatelogs -l /usr/local/apache2/logs/test.com-access_%Y%m%d_log 86400" combined 86400s==一天 # ls /usr/local/apache2/logs 此时日志按照天分割 test.com-access_20151214_log test.com-error_log
Apache如何做到不记录指定文件类型日志? # !vim vim /usr/local/apache2/conf/extra/httpd-vhosts.conf SetEnvIf Request_URI ".*\.gif$" image-request SetEnvIf Request_URI ".*\.jpg$" image-request SetEnvIf Request_URI ".*\.png$" image-request SetEnvIf Request_URI ".*\.bmp$" image-request SetEnvIf Request_URI ".*\.swf$" image-request SetEnvIf Request_URI ".*\.js$" image-request SetEnvIf Request_URI ".*\.css$" image-request ErrorLog "logs/test.com-error_log" CustomLog "|/usr/local/apache2/bin/rotatelogs -l /usr/local/apache2/logs/test.com-access_%Y%m%d_log 86400" combined env=!image-reqest
|