日志对于程序员是很重要的,可以用于问题排错,记录程序运行时的状态,一个好的日志配置,能够给与运维人员和开发人员精准的问题定位功能
Nginx开启日志功能只需要在nginx.conf里面找到log_format参数,定义日志的格式,以及定义日志的存储位置,日志的格式,路径,缓存大小等等
可以定义在全局配置中
nginx.conf配置日志功能的代码修改为如下即可,在http{}当中进行配置
定义日志的内容格式(记录内容的详细程度)
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
定义日志的存储路径,以conf文件夹为相对路径
access_log logs/access.log main;
定义其他参数
access_log "pipe:rollback logs/access_log interval=1d baknum=7 maxsize=2G" main;
nginx的访客日志内容如下
192.168.178.1 - - [03/Mar/2022:18:24:57 +0800] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36" "-"
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
$remote_addr 记录访客的客户端ip地址
$remote_addr 记录远程客户端的访客用户名
$time_local 记录访问的时间和地区信息
$request 记录用户的http请求的首行信息
$status 记录用户的http请求状态,也就是请求发出之后,响应的状态,如200,301,404,502
$body_bytes_sent 记录服务器发给客户端的响应体数据字节大小
$http_referer 记录本次请求是从哪个链接过来的,可以根据refer信息来进行防盗链,防止信息被盗用
$http_user_agent 记录客户端的访问信息,如浏览器信息,手机浏览器信息
$http_x_forwarded_for 捉到藏在代理服务器后面的真实客户端的信息
网友评论