# nginx默认日志记录在/var/log/nginx/目录
[root@localhost conf.d]# ls /var/log/nginx/ # 每个日志按照当天的日期进行切割
access.log # 访问日志
error.log # 错误日志
# 默认的日志格式
2024/04/21 19:51:33 [error] 1861#1861: *1 open() "/web/favicon.ico" failed (2: No such file or directory), client: 192.168.239.1, server: localhost, request: "GET /favicon.ico HTTP/1.1", host: "192.168.239.129:81", referrer: "http://192.168.239.129:81/"
定制nginx的访问日志格式
# 配置在nginx的主配置文件nginx.conf中,在server配置的外面
1 worker_processes 1;
2 events {
3 worker_connections 1024;
4 }
5 http {
6 include mime.types;
7 default_type application/octet-stream;
8 charset utf-8;
# 配置日志格式
9 log_format comperssion '$remote_addr - $remote_user [$time_local]'
10 '"$request" $status $bytes_sent'
11 '"$http_referer" "$http_user_agent" "$gzip_ratio"';
# comperssion 可以理解是这个格式的名字,谁想用这个格式,谁就用这个名字来指定格式。
# $remote_addr 客户端的IP地址
# $remote_user 客户端的用户名称
# $time_local 当前时间
# $request 请求起始行
# $status 请求状态码
# $bytes_sent 响应资源大小
# $http_referer 记录资源的跳转地址
# $http_user_agent 用户的终端信息
# $gzip_ratio gzip的压缩级别
12 server {
13 listen 80;
14 server_name localhost;
15 location / {
16 root html;
17 index index.html index.htm;
18 }
19 }
20
21 server {
22 listen 81;
23 server_name localhost;
24 location / {
25 root /web;
26 index index.html index.htm;
27 }
28 }
29 }
将nginx日志存放到站点资源路径中,并且设置指定格式
# 在server中配置
server {
listen 81;
server_name localhost;
# 设置log存放路径,并且指定log格式,文件夹不存在会报错
# 可以通过 nginx -t -c /etc/nginx/nginx.conf 指令检查配置文件是否正确
access_log /opt/nginx/81_log comperssion; # 将日志存放在/opt/nginx/81_log中,使用comperssion格式。
location / {
root /web;
index index.html index.htm;
}
}
# 给/opt/nginx目录授权,不然无法操作该目录
[root@localhost nginx]# chown nginx:nginx /opt/nginx/
错误日志记录无法更改格式,只能改保存位置
server {
listen 81;
server_name localhost;
# 设置log存放路径,并且指定log格式,文件夹不存在会报错
error_log /opt/nginx_error/81_error_log;
location / {
root /web;
index index.html index.htm;
}
}