“Debian + Nginx 报错”这个描述太宽泛了,需要看具体报错信息才能准确解决。下面我按常见场景给你总结排查思路和解决办法,你可以对照自己的情况。
sudo tail -n 50 /var/log/nginx/error.log
sudo journalctl -u nginx --no-pager -n 50
把报错内容贴出来,基本就能定位问题。
Job for nginx.service failed一般是配置文件有错。
解决:
sudo nginx -t
根据提示修改 /etc/nginx/nginx.conf 或 /etc/nginx/sites-enabled/*
Address already in use端口被占用(常见 80 / 443)
解决:
sudo ss -lntp | grep ':80'
关闭占用程序(如 apache2):
sudo systemctl stop apache2
Permission denied常见于:
解决:
sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www
403 Forbidden原因:
检查:
ls -l /var/www/html
确保有 index.html 或 index.php
502 Bad Gateway常见于:
解决:
sudo systemctl status php8.2-fpm
sudo systemctl restart php8.2-fpm
SSL certificate error证书路径错误或过期
检查:
sudo nginx -t
确认 ssl_certificate 和 ssl_certificate_key 路径正确
✅ nginx -t 是否通过
✅ 端口是否被占用
✅ 网站目录权限是否正确
✅ 后端服务是否运行
✅ 防火墙是否放行(ufw)
sudo ufw allow 'Nginx Full'
为了更精准帮你,建议提供:
nginx -t 输出如果你愿意,直接把报错贴出来,我可以一步一步帮你修。