一、Nginx访问日志 #vim /usr/local/nginx/conf/nginx.conf 日志格式的名字combined_realip可以自定义,例如将它修改为aming,注意,这里定义为什么,后面引用的时候就定义为什么(nginx配置文件看见分号才是这一行结束) #vim /usr/local/nginx/conf/vhost/test.com.conf //增加如下一行 #/usr/local/nginx/sbin/nginx -t #/usr/local/nginx/sbin/nginx -s reload #curl -x127.0.0.1:80 test4.com/admin/index.html/kdfgfdlk -I //访问报404代码 #curl -x127.0.0.1:80 test3.com/admin/index.html/kdfgfdlk -I //访问报301代码 #curl -x127.0.0.1:80 test2.com/admin/index.html/kdfgfdlk -I //访问报301代码 #cat /tmp/test.com.log //查看下日志文件 二、Nginx日志切割 #vim /usr/local/sbin/nginx_log_rotate.sh //自定义脚本nginx_log_rotate.sh 纠正下:将下图的logdir目录修改为 logdir="/tmp/" #sh -x /usr/local/sbin/nginx_log_rotate.sh //执行脚本,加-x是为了查看脚本执行过程,如下图 #ls /tmp/ //可以查看下/tmp/目录下是否已经生成前一天的日志文件和当天的日志 #find /tmp/ -name .log- -type f -mtime +30 |xargs rm //删除30天以前的日志文件 #cat /usr/local/sbin/nginx_log_rotate.sh //日志切割脚本 #! /bin/bash d=date -d "-1 day" +%Y%m%d logdir="/tmp/" nginx_pid="/usr/local/nginx/logs/nginx.pid" cd $logdir for log in ls *.log do mv $log $log-$d done /bin/kill -HUP cat $nginx_pid 写完脚本之后还需要创建任务计划: #crontab -e //创建任务计划,写入如下内容: 0 0 * * * /bin/bash /usr/local/sbin/nginx_log_rotate.sh //每天凌晨0点执行这个脚本 三、静态文件不记录日志和过期时间 #vim /usr/local/nginx/conf/vhost/test.com.conf #/usr/local/nginx/sbin/nginx -t #/usr/local/nginx/sbin/nginx -s reload 配置完成之后进行验证测试: #cd /data/wwwroot/test.com/ #vim 1.gif //里面随便写一些内容做测试 #vim 2.js //里面随便写一些内容做测试 #curl -x127.0.0.1:80 test.com/1.gif #curl -x127.0.0.1:80 test.com/2.js #curl -x127.0.0.1:80 test.com/index.html #cat /tmp/test.com.log //查看日志,可以看到日志没有记录访问1.gif和2.js的访问日志 #curl -x127.0.0.1:80 -I test.com/2.js //-I看下过期时间