cxin 发表于 2017-12-22 09:35:10

nginx网站日志配置

  用yum安装的nginx的日志默认安装在路径:/var/log/nginx
  nginx配置文件:
  /etc/nginx/nginx.conf (总配置文件)
  /etc/nginx/conf.d/default.conf (网站级别的配置文件)
  如果要使用nginx默认配置的日志格式,并改变日志的存储位置,可以在/etc/nginx/conf.d/default.conf 的server中直接添加日志文件的路径:
  access_log /root/ss/log/ss-access.log
  error_log /root/ss/log/ss-error.log
  #下面这段发现是错了,会导致css和图片无法加载,暂时没找到原因!!!!!!!!!!
  如果要设置nginx不保存突图片、css、js文件的访问记录,在/etc/nginx/conf.d/default.conf 的server中直接添加:
  location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
  {
  access_log off;
  }
  location ~ .*\.(js|css)?$
  {
  access_log off;
  }
  --------------------------------------
  这个设置之后,静态文件不显示的问题终于解决了:::
  需要设置一个server级别的root!!(网站根目录)而不仅仅是在location / 中设置root的值。
  server {
  6   listen       80 default_server;
  7   server_name www.xxx.com;
  8
  9   root /html/;
  10
  11   # Load configuration files for the default server block.
  12   include /etc/nginx/default.d/*.conf;
  13
  14   location / {
  15         root /html/;
  16         index index.html;
  17         proxy_set_header Host $host;
  18         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  19
  20         access_log /html/log/access.log main;
  21         error_log /html/log/error.log error;
  22   }
  23
  24   location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
  25         access_log off;
  26   }
  -----------------------------------------------------------------------------------------
  使用logrotate进行日志切分:
  vim /etc/logrotate.d/nginx (编辑配置文件)
  参数:
  compress:通过gzip 压缩转储旧的日志
  nocompress:不需要压缩时,用这个参数
  copytruncate:用于还在打开中的日志文件,把当前日志备份并截断
  nocopytruncate:备份日志文件但是不截断
  create mode owner group:使用指定的文件模式创建新的日志文件
  nocreate:不建立新的日志文件
  delaycompress:和 compress 一起使用时,转储的日志文件到下一次转储时才压缩
  nodelaycompress:覆盖 delaycompress 选项,转储同时压缩。
  errors address:专储时的错误信息发送到指定的Email 地址
  ifempty:即使是空文件也转储,这个是 logrotate 的缺省选项。
  notifempty:如果是空文件的话,不转储
  mail address:把转储的日志文件发送到指定的E-mail 地址
  nomail:转储时不发送日志文件
  olddir directory:转储后的日志文件放入指定的目录,必须和当前日志文件在同一个文件系统
  noolddir:转储后的日志文件和当前日志文件放在同一个目录下
  prerotate/endscript:在转储以前需要执行的命令可以放入这个对,这两个关键字必须单独成行
  postrotate/endscript:在转储以后需要执行的命令可以放入这个对,这两个关键字必须单独成行
  sharedscripts:所有的日志文件都轮转完毕后统一执行一次脚本
  daily:指定转储周期为每天
  weekly:指定转储周期为每周
  monthly:指定转储周期为每月
  rotate count:指定日志文件删除之前转储的次数,0 指没有备份,5 指保留5 个备份

  size>  dateext : 日志名称使用日期。
页: [1]
查看完整版本: nginx网站日志配置