十二周三次课 (3 月 14 日)
12.10 Nginx 访问日志
测试
12.11 Nginx 日志切割
自定义 shell 脚本
- vim /usr/local/sbin/nginx_log_rotate.sh #写入如下内容
- #! /bin/bash
- # 假设 nginx 的日志存放路径为 / tmp/
- 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`
执行日志切割脚本:
sh -x /usr/local/sbin/nginx_log_rotate.sh #加 - x 可以看到脚本执行过程
删除 30 天前的日志
设定任务计划
crontab -e
加入如下一行:
0 0 * * */bin/bash /usr/local/sbin/nginx_log_rotate.sh
12.12 静态文件不记录日志和过期时间
设置静态文件不记录日志和过期时间的方法:
编辑虚拟主机配置文件
vim /usr/local/nginx/conf/vhost/test.com.conf
配置如下
- location ~ .\.(gif|jpg|jpeg|png|bmp|swf)$
- {
- expires 7d;
- access_log off;
- }
- location ~ .\.(js|CSS)$
- {
- expires 12h;
- access_log off;
- }
- /usr/local/nginx/sbin/nginx -t
- /usr/local/nginx/sbin/nginx -s reload
测试
来源: http://www.bubuko.com/infodetail-2527661.html