发布于2026-07-26 阅读(0)
扫一扫,手机访问
Nginx出问题的时候,第一反应肯定是去翻错误日志——这是排查故障的起点。但很多新手往往卡在第一步:日志到底在哪儿?怎么才能快速定位关键信息?今天咱们就把这事儿彻底捋清楚,从文件位置到查看技巧,再到常见坑的解法,一步到位。
Nginx错误日志的默认路径通常是 /var/log/nginx/error.log(Linux系统),但实际路径可能因为配置文件的修改而发生变化。所以别急着直接去读,先确认一下准确位置,避免白跑一趟。

# 搜索主配置文件中的error_log指令(主配置文件一般位于/etc/nginx/nginx.conf)sudo grep -r "error_log" /etc/nginx/ # 或检查虚拟主机配置(如sites-a vailable/default)sudo grep -r "error_log" /etc/nginx/sites-a vailable/
如果上面的命令没找到自定义配置,那就直接用默认路径,问题不大。
tail -f 是个好东西,它能实时跟踪日志文件的新增内容,特别适合在调试过程中盯着错误输出。比如你刚改完配置,重启Nginx后立刻就能看到有没有报错。
sudo tail -f /var/log/nginx/error.log
按 Ctrl+C 停止实时查看,随时可以回来。
如果想把历史记录翻个底朝天,有两个常用选择:
sudo cat /var/log/nginx/error.logq 退出:sudo less /var/log/nginx/error.log日志文件一大,肉眼找错误信息简直是折磨。这时候 grep 就是救星:
sudo grep -i "error" /var/log/nginx/error.logsudo grep "Connection refused" /var/log/nginx/error.logsudo grep -c "404" /var/log/nginx/error.log如果执行命令时提示“Permission denied”,别慌——加个 sudo 就行。或者直接切换到 root 用户:
sudo su -tail -f /var/log/nginx/error.log
明明按照命令走,但提示文件不存在?那大概率是配置文件中自定义了其他路径。回头重新检查 error_log 指令,看看是不是写到了别的目录下。
最奇怪的情况:日志文件存在,但里面啥也没有。这时候先确认 Nginx 是否在正常运行:
sudo systemctl status nginx
如果没运行,启动它再试:
sudo systemctl start nginx
注意,日志为空也可能意味着这段时间根本没有错误——这反而是好事。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8