圆咕噜咕噜 发表于 2026-2-11 17:42:39

nginx日记剖析

Nginx 的日记默认参数包罗访问日记(Access Log)和错误日记(Error Log)。以下是对这些默认参数的具体剖析:
1. 访问日记(Access Log)

访问日记纪录了每个客户端哀求的具体信息,包罗哀求的泉源、时间、哀求内容、相应状态码等。
默认访问日记位置

Nginx 默认会将访问日记纪录到 /var/log/nginx/access.log。
默认访问日记格式

Nginx 默认使用 combined 格式纪录访问日记。combined 格式包罗以下字段:

[*]$remote_addr:客户端的 IP 地点。
[*]$remote_user:客户端用户名(假如启用了根本认证)。
[*]$time_local:当地时间,格式为 。
[*]$request:哀求行,包罗哀求方法、哀求 URI 和协议版本。
[*]$status:相应状态码。
[*]$body_bytes_sent:发送给客户端的字节数(不包罗相应头)。
[*]$http_referer:哀求的泉源页面(Referer)。
[*]$http_user_agent:客户端的用户署理(User-Agent)。
设置示例

http {
    # 定义日志格式
    log_format combined '$remote_addr - $remote_user [$time_local] "$request" '
                        '$status $body_bytes_sent "$http_referer" '
                        '"$http_user_agent"';

    # 指定访问日志文件路径和使用的日志格式
    access_log /var/log/nginx/access.log combined;
}
2. 错误日记(Error Log)

错误日记纪录了 Nginx 运行过程中发生的错误信息,包罗启动错误、设置错误和哀求处理惩罚错误等。
默认错误日记位置

Nginx 默认会将错误日记纪录到 /var/log/nginx/error.log。
默认错误日记级别

Nginx 默认的日记级别是 error,这意味着只纪录 error 级别及以上级别(如 crit, alert, emerg)的日记。可以通过 error_log 指令修改日记级别。
设置示例

http {
    # 指定错误日志文件路径和日志级别
    error_log /var/log/nginx/error.log error;
}
3. 其他常见日记级别

Nginx 支持以下日记级别:

[*]debug:调试信息
[*]info:平凡讯息
[*]notice:关照信息
[*]warn:告诫信息
[*]error:错误信息(默认)
[*]crit:严峻情况
[*]alert:须要立即处理惩罚的情况
[*]emerg:体系不可用
4. 完备示例设置

以下是一个完备的 Nginx 设置示例,包罗访问日记和错误日记的默认参数设置:
http {
    # 定义访问日志格式
    log_format combined '$remote_addr - $remote_user [$time_local] "$request" '
                        '$status $body_bytes_sent "$http_referer" '
                        '"$http_user_agent"';

    # 配置访问日志
    access_log /var/log/nginx/access.log combined;

    # 配置错误日志
    error_log /var/log/nginx/error.log error;

    server {
      listen 80;
      server_name example.com;

      location / {
            root /usr/share/nginx/html;
            index index.html index.htm;
      }
    }
}
5. 其他日记设置选项

Nginx 还支持其他一些日记设置选项,如:

[*]缓冲访问日记:通过 access_log 指令中的 buffer 参数可以缓冲日记纪录,进步性能。access_log /var/log/nginx/access.log combined buffer=32k;

[*]条件纪录日记:可以通过设置条件来有选择地纪录日记。access_log /var/log/nginx/access.log combined if=$request_time > 1;


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!qidao123.com:ToB企服之家,中国第一个企服评测及软件市场,开放入驻,技术点评得现金
页: [1]
查看完整版本: nginx日记剖析