用户请求一个页面,日志除了会记录页面的URL以外,页面里的静态文件的URL同样也会被加载,从而被记录到访问日志里去,这个日志量是很大的,会妨碍我们分析日志,因为其实我们只是想看看用户访问的页面的URL,而不是页面里面的静态文件。


1. 定义日志格式:vim /usr/local/nginx/conf/nginx.conf

log_format test '$remote_addr $http_x_forwarded_for [$time_local]'

'$host "$request_uri" $status'

'"$http_referer" "$http_user_agent"';


2. 定义虚拟主机的日志格式和路径:vim /usr/local/nginx/conf/vhosts/test.conf

server

{

    listen 80;

    server_name www.test.com;

    index index.html index.htm index.php;

    root /data/www;

    

    # 定义访问日志的路径和格式

    access_log /tmp/nginx_access.log test;

    

    # 不记录静态文件的的访问日志

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|rar|zip|gz|bz2|js|css)$ {

        access_log off;

    }

}

如此一来,就不会记录以.png, .jpg, .js和.css等格式结尾的日志了,日志看起来干净整洁多了。