在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
nginx 日志相关指令主要有两条, log_format 格式 log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_s ent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'] #注释: 通常web服务器放在反向代理的后面,这样就不能获取到客户的IP地址了,通过$remote_add拿到的IP地址是反向代理服务器的iP地址。反向代理服务器在转发请求的http头信息中,可以增加x_forwarded_for信息,用以记录原有客户端的IP地址和原来客户端的请求的服务器地址; log_format mylogformat ' $http_x_forwarded_for- $remote_user [$time_local] ' ' "$request" '$status $body_bytes_s ent ' ' "$http_referer" "$http_user_agent" '; 用access_log指令日志文件存放路径; #示例: access_log logs/access.log main; #我们用log_format 定义了一个mylogformat的日志 我们可以写成这样 access_log logs/access.log mylogformat; #如果不想启用日志 : access_log off ; Nginx日志切割脚本 #!/usr/bin/env python import datetime,os,sys,shutil log_path = '/alidata/log/nginx/access/' log_file = 'www.wpython.com.log' yesterday = (datetime.datetime.now() - datetime.timedelta(days = 1)) try: os.makedirs(log_path + yesterday.strftime('%Y') + os.sep + \ yesterday.strftime('%m')) except OSError,e: print print e sys.exit() shutil.move(log_path + log_file,log_path \ + yesterday.strftime('%Y') + os.sep \ + yesterday.strftime('%m') + os.sep \ + log_file + '_' + yesterday.strftime('%Y%m%d') + '.log') os.popen("sudo kill -USR1 `cat /alidata/server/nginx/logs/nginx.pid`") |
请发表评论