zoukankan      html  css  js  c++  java
  • 8.14 nginx访问日志、nginx日志切割、静态文件不记录日志和过期时间

    1、nginx访问日志

      编辑主配置文件vim /usr/local/nginx/conf/nginx.conf搜索log_format,可以查看日志格式为combined_reailp,这个名字可以进行自定义

      以下为日志格式对应的记录的内容

      除在主配置文件中定义日志外,还需要在虚拟主机配置文件中定义日志,在虚拟主机配置文件中,增加如下配置:

      access_log /tmp/test.com.log combined_reailp;

      然后执行/usr/local/nginx/sbin/nginx -t进行检查配置文件是否正确

      执行/usr/local/nginx/sbin/nginx -s reload重新加载配置文件

      使用crul访问站点之后,可以查看日志内容

    2、nginx日志切割

       自定义shell 脚本

      编辑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执行脚本

      定期执行如下命令,删除30天以前的日志文件

      创建任务计划crontab -e,添加如下内容,每天零点执行该脚本:

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

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

      在虚拟主机配置文件中,增加如下内容

    location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$

    {

      expires 7d;

    #配置过期时间

      access_log off;

    #关闭日志记录

    }

    location ~ .*.(js|css)$

    {

      expires 12h;

      access_log off;

    }

       检查配置文件并重新加载

      此时创建1.gif和2.js,并写入内容,使用curl访问这两个文件,查看日志是否记录

      使用-I选项进行访问时,可以查看过期时间

  • 相关阅读:
    js 基于函数伪造的方式实现继承
    js 创建List<Map> 这种格式的集合
    微信get post请求到微信服务器 模版 素材操作
    微信开发学习 问题1: 网页授权问题 “该连接无法访问” 解决方法
    Jackson 高性能的JSON处理 ObjectMapper
    baseDao 使用spring3+hibernate4方式
    PropertiesUtil 读取配置文件工具类
    C语言(函数)学习之strstr strcasestr
    命令行选项解析函数(C语言):getopt()和getopt_long()
    AE插件开发的一些总结
  • 原文地址:https://www.cnblogs.com/w494129131/p/9463651.html
Copyright © 2011-2022 走看看