如果一个站点的访问量特别大,那么访问日志就会很多,但有一些访问日志我们其实是可以忽略的,比如网站的一些图片,还有 js,css 等静态对象。而这些文件的访问往往是巨量的,记录这些日志也没什么用,那就可以忽略掉这些访问的日志了。
相关配置是在虚拟主机配置文件中加入以下语句:
[root@localhost ~]# 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 "|/usr/local/apache2/bin/rotatelogs -l /usr/local/apache2/logs/123.com-error_%Y%m%d_log 86400" CustomLog "|/usr/local/apache2/bin/rotatelogs -l /usr/local/apache2/logs/123.com-access_%Y%m%d_log 86400" combined env=!image-request
说明:在原来日志配置的基础上,增加了一些 image-request 的定义,比如把 gif、jpg、bmp、swf、js、css 等结尾的全标记为 image-request ,然后在配置日志的时候加一个标记 env=!image-request,这里有个叹号,表示取反,不加则表示只记录这些字符结尾的访问日志。
重启apache,浏览器检测日志文件,则没有上述文件类型的访问记录。
[root@localhost ~]# /usr/local/apache2/bin/apachectl -t Syntax OK [root@localhost ~]# /usr/local/apache2/bin/apachectl restart
本文出自 “散宜生的学习笔记” 博客,请务必保留此出处http://sanyisheng.blog.51cto.com/11154168/1795816
原文地址:http://sanyisheng.blog.51cto.com/11154168/1795816