温馨提示×

CentOS nginx日志格式自定义方法

小樊
39
2025-12-15 16:30:45
栏目: 智能运维

在 CentOS 系统中,要自定义 Nginx 日志格式,你需要编辑 Nginx 的配置文件

  1. 打开 Nginx 配置文件。通常情况下,它位于 /etc/nginx/nginx.conf。使用文本编辑器打开它,例如使用 vim:
sudo vim /etc/nginx/nginx.conf
  1. http 块中,定义一个新的日志格式。例如,创建一个名为 custom_format 的自定义日志格式:
http {
    ...
    log_format custom_format '$remote_addr - $remote_user [$time_local] '
                              '"$request" $status $body_bytes_sent '
                              '"$http_referer" "$http_user_agent" '
                              '"$http_x_forwarded_for"';
    ...
}

在这个例子中,我们定义了一个名为 custom_format 的日志格式,其中包含了远程地址、远程用户、本地时间、请求、状态码、发送的字节数、引用页、用户代理和 X-Forwarded-For 头部信息。

  1. serverlocation 块中,使用自定义日志格式。将 access_log 指令的值设置为自定义日志格式的名称:
server {
    ...
    access_log /var/log/nginx/access.log custom_format;
    ...
}

在这个例子中,我们将访问日志文件设置为 /var/log/nginx/access.log,并使用 custom_format 作为日志格式。

  1. 保存更改并退出文本编辑器。

  2. 重新加载 Nginx 以应用更改:

sudo nginx -t      # 检查配置文件语法是否正确
sudo systemctl reload nginx  # 重新加载 Nginx 配置

现在,Nginx 将使用自定义日志格式记录访问日志。你可以根据需要调整 log_format 指令中的变量,以满足你的需求。

0