linux 不写日志,Nginx访问日志、日志切割、静态文件不记录日志和过期时间

11月27日任务

12.10 Nginx访问日志

12.11 Nginx日志切割

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

12.10 Nginx访问日志

fbdff9dc2d1c7fc1b4757fdd2ad7a07c.png

除了在主配置文件nginx.conf里定义日志格式外,还需要在虚拟主机配置文件中增加

access_log /tmp/1.log combined_realip;

这里的combined_realip就是在nginx.conf中定义的日志格式名字

-t && -s reload

curl -x127.0.0.1:80 test.com -I

cat /tmp/1.log

[root@zgxlinux-01 vhost]# vim ../nginx.conf         #修改日志名称

1546e941c965748787b32f7cd6b9e3f8.png

[root@zgxlinux-01 vhost]# vim test.com.conf

77e3b6c1608e9caf2d350d0d60cefb31.png

[root@zgxlinux-01 vhost]# /usr/local/nginx/sbin/nginx -t

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok

nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

[root@zgxlinux-01 vhost]# /usr/local/nginx/sbin/nginx -s reload

[root@zgxlinux-01 vhost]# curl -x127.0.0.1:80 test4.com/admin/index.html/asdkfh -I

HTTP/1.1 404 Not Found

Server: nginx/1.14.0

Date: Sat, 01 Dec 2018 03:20:47 GMT

Content-Type: text/html

Content-Length: 169

Connection: keep-alive

[root@zgxlinux-01 vhost]# curl -x127.0.0.1:80 test3.com/admin/index.html/asdkfh -I

HTTP/1.1 301 Moved Permanently

Server: nginx/1.14.0

Date: Sat, 01 Dec 2018 03:20:54 GMT

Content-Type: text/html

Content-Length: 185

Connection: keep-alive

Location: http://test.com/admin/index.html/asdkfh

[root@zgxlinux-01 vhost]# curl -x127.0.0.1:80 test2.com/admin/index.html/asdkfh -I

HTTP/1.1 301 Moved Permanently

Server: nginx/1.14.0

Date: Sat, 01 Dec 2018 03:21:08 GMT

Content-Type: text/html

Content-Length: 185

Connection: keep-alive

Location: http://test.com/admin/index.html/asdkfh

[root@zgxlinux-01 vhost]# cat /tmp/test.com.log

127.0.0.1 - [01/Dec/2018:11:20:54 +0800] test3.com "/admin/index.html/asdkfh" 301 "-" "curl/7.29.0"

127.0.0.1 - [01/Dec/2018:11:21:08 +0800] test2.com "/admin/index.html/asdkfh" 301 "-" "curl/7.29.0"

12.11 、Nginx日志切割

自定义shell 脚本

vim /usr/local/sbin/nginx_log_rotate.sh//写入如下内容

#! /bin/bash

## 假设nginx的日志存放路径为/data/logs/

d=`date -d "-1 day" +%Y%m%d`

logdir="/data/logs"

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`

任务计划

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

#操作过程

[root@zgxlinux-01 vhost]# vim /usr/local/sbin/nginx_logrotate.sh

34ac44a6500de183c47b107a1c28e0ea.png

[root@zgxlinux-01 vhost]# sh -x  /usr/local/sbin/nginx_logrotate.sh       #执行这个脚本,-x表示查看执行过程

++ date -d '-1 day' +%Y%m%d

+ d=20181130

+ logdir=/tmp/

+ nginx_pid=/usr/local/nginx/logs/nginx.pid

+ cd /tmp/

++ ls test.com.log

+ for log in '`ls *.log`'

+ mv test.com.log test.com.log-20181130

++ cat /usr/local/nginx/logs/nginx.pid

+ /bin/kill -HUP 4421

[root@zgxlinux-01 vhost]# ls /tmp/

mysql.sock

pear

php-fcgi.sock

systemd-private-bbc1c842e4c14aefa0295c2d1c669add-chronyd.service-yevkTQ

test.com.log

test.com.log-20181130

[root@zgxlinux-01 vhost]# find /tmp/ -name *.log-* -type f -mtime +30 |xargs rm   #长时间以后需要清理日志,xargs进行删除操作。

rm: 缺少操作数

Try 'rm --help' for more information.

[root@zgxlinux-01 vhost]# find /tmp/ -name *.log-* -type f

/tmp/test.com.log-20181130

[root@zgxlinux-01 vhost]# find /tmp/ -name *.log-* -type f |xargs rm -rf

[root@zgxlinux-01 vhost]# find /tmp/ -name *.log-* -type f

[root@zgxlinux-01 vhost]# ls /tmp/

mysql.sock

pear

php-fcgi.sock

systemd-private-bbc1c842e4c14aefa0295c2d1c669add-chronyd.service-yevkTQ

test.com.log

[root@zgxlinux-01 vhost]# ls /usr/local/sbin/

iptables.sh  nginx_logrotate.sh

[root@zgxlinux-01 vhost]# cat !$/nginx_logrotate.sh

cat /usr/local/sbin//nginx_logrotate.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`

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

配置如下

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

{

expires      7d;

access_log off;

}

location ~ .*\.(js|css)$

{

expires      12h;

access_log off;

}

#操作过程

[root@zgxlinux-01 vhost]# vim test.com.conf

dddf695d3d6c95707c4cb66fe2fa7476.png

[root@zgxlinux-01 vhost]# /usr/local/nginx/sbin/nginx -t

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok

nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

[root@zgxlinux-01 vhost]# /usr/local/nginx/sbin/nginx -s reload

[root@zgxlinux-01 vhost]# cd /data/wwwroot/test.com/

[root@zgxlinux-01 test.com]# ls

admin  index.html

[root@zgxlinux-01 test.com]# vim 1.gif

[root@zgxlinux-01 test.com]# vim 2.js

[root@zgxlinux-01 test.com]# curl -x127.0.0.1:80 test.com/1.gif

kdhfkadshfkashkdh

[root@zgxlinux-01 test.com]# curl -x127.0.0.1:80 test.com/2.js

akdksfalsdjflajdfns,shvawekhfkl

[root@zgxlinux-01 test.com]# curl -x127.0.0.1:80 test.com/index.html

test.com

[root@zgxlinux-01 test.com]# cat /tmp/test.com.log

127.0.0.1 - [01/Dec/2018:12:07:37 +0800] test.com "/index.html" 200 "-" "curl/7.29.0"

[root@zgxlinux-01 test.com]# curl -x127.0.0.1:80 test.com/2.jsdsfdss

404 Not Found

404 Not Found


nginx/1.14.0
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值