十二周三次课 (3月14日)

12.10 Nginx访问日志

blob.png

blob.png

blob.png

blob.png

blob.png

测试

blob.png

blob.png

12.11 Nginx日志切割

blob.png

自定义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`

blob.png

执行日志切割脚本:

sh -x /usr/local/sbin/nginx_log_rotate.sh #加-x可以看到脚本执行过程

blob.png

删除30天前的日志

blob.png

  • 设定任务计划

    crontab -e

  • 加入如下一行:

    0 0 * * * /bin/bash /usr/local/sbin/nginx_log_rotate.sh

blob.png

12.12 静态文件不记录日志和过期时间

blob.png

  • 设置静态文件不记录日志和过期时间的方法:

  • 编辑虚拟主机配置文件

    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;
    }

blob.png

  • /usr/local/nginx/sbin/nginx -t

  • /usr/local/nginx/sbin/nginx -s reload

测试

blob.png

blob.png

blob.png

blob.png