温馨提示×

Ubuntu下Nginx日志在哪查看

小樊
33
2025-12-15 02:17:33
栏目: 智能运维

Ubuntu 下 Nginx 日志位置与查看方法

默认日志路径

  • 访问日志:/var/log/nginx/access.log
  • 错误日志:/var/log/nginx/error.log
  • 日志目录:/var/log/nginx/
  • 说明:通过 apt 安装后,日志默认写入上述路径;若站点或配置自定义了路径,以实际配置为准。

常用查看命令

  • 实时查看访问日志:sudo tail -f /var/log/nginx/access.log
  • 实时查看错误日志:sudo tail -f /var/log/nginx/error.log
  • 分页查看(适合大文件):less /var/log/nginx/error.log
  • 按时间查看系统日志(如 syslog):journalctl --since "2025-12-15 00:00:00" --until "2025-12-15 23:59:59"

服务日志与系统日志

  • 使用 systemd 管理的服务日志:sudo journalctl -u nginx
  • 查看最近的 Nginx 日志条目:sudo journalctl -u nginx -n 100
  • 按时间段查看:sudo journalctl -u nginx --since "2025-12-01" --until "2025-12-15"

自定义路径与验证

  • 配置位置:主配置 /etc/nginx/nginx.conf;站点配置 /etc/nginx/sites-enabled/(如 default)
  • 在配置中可自定义日志路径与级别,例如:
    • access_log /var/log/nginx/access.log;
    • error_log /var/log/nginx/error.log warn;
  • 修改后检查语法并重新加载:
    • 语法检查:sudo nginx -t
    • 热重载:sudo systemctl reload nginx
  • 若未生成日志,确认日志目录存在且 nginx 进程对目录有写权限。

日志轮转与维护

  • Ubuntu 默认通过 logrotate 管理 Nginx 日志,配置文件:/etc/logrotate.d/nginx
  • 常见做法:按日轮转、保留 14 天、压缩旧日志、轮转后通知 Nginx 重新打开日志文件(发送 USR1 信号)
  • 示例片段:
    • /var/log/nginx/*.log { daily missingok rotate 14 compress delaycompress notifempty create 640 nginx adm sharedscripts postrotate [ -f /var/run/nginx.pid ] && kill -USR1 \cat /var/run/nginx.pid` endscript }`

0