CentOS 上 Nginx 日志的默认位置及查看方法
在 CentOS 系统中,Nginx 的日志文件默认存储在 /var/log/nginx/ 目录下,主要包括两类核心日志:
access.log,路径为 /var/log/nginx/access.log。error.log,路径为 /var/log/nginx/error.log。使用 tail -f 命令可以实时跟踪日志文件的最新内容,适合监控实时请求或错误:
# 实时查看访问日志
sudo tail -f /var/log/nginx/access.log
# 实时查看错误日志
sudo tail -f /var/log/nginx/error.log
按 Ctrl + C 可停止实时查看。
使用 cat 或 less 命令查看日志文件的完整内容:
# 查看访问日志完整内容
cat /var/log/nginx/access.log
# 查看错误日志完整内容(支持翻页)
less /var/log/nginx/error.log
在 less 中,按 G 跳转至文件末尾,按 / 输入关键词可搜索内容。
使用 grep 命令筛选日志中的特定信息(如错误信息、特定IP的请求):
# 查找访问日志中状态码为404的请求
sudo grep '404' /var/log/nginx/access.log
# 实时搜索错误日志中的"error"关键词
sudo tail -f /var/log/nginx/error.log | grep 'error'
该命令可快速定位问题请求或错误类型。
CentOS 7 及以上版本使用 systemd 管理服务,可通过 journalctl 命令查看 Nginx 的系统日志:
# 查看 Nginx 服务的所有日志
journalctl -u nginx
# 实时查看 Nginx 服务的最新日志
journalctl -u nginx -f
# 按时间范围查看日志(如2025-10-26 10:00至11:00)
journalctl -u nginx --since "2025-10-26 10:00:00" --until "2025-10-26 11:00:00"
此方式可整合系统日志与服务日志,便于排查与系统相关的 Nginx 问题。
root 用户或 nginx 用户,查看时需使用 sudo 提升权限,避免权限不足导致无法访问。access_log 或 error_log 指令),需以配置文件中的实际路径为准。可通过以下命令查找自定义路径:# 查找 access_log 配置
sudo grep -r "access_log" /etc/nginx/
# 查找 error_log 配置
sudo grep -r "error_log" /etc/nginx/
修改配置后,需执行 sudo nginx -s reload 使更改生效。