你这个问题信息太少了,我只能先给你最常见的原因清单,你可以对照看看是哪一种,或者直接把报错内容贴出来,我帮你精确定位。
报错类似:
bind() to 0.0.0.0:80 failed (98: Address already in use)
原因:
apache2解决:
sudo systemctl stop apache2
sudo systemctl disable apache2
sudo systemctl restart nginx
或查端口:
sudo ss -tulnp | grep ':80'
报错类似:
nginx: [emerg] unknown directive "xxx"
nginx: [emerg] unexpected "}"
检查配置:
sudo nginx -t
修改后:
sudo systemctl reload nginx
报错类似:
403 Forbidden
原因:
/var/www 目录权限不对解决:
sudo chown -R www-data:www-data /var/www
sudo chmod -R 755 /var/www
Debian 默认用 AppArmor,可能限制 nginx 读文件。
查看:
sudo aa-status
确认:
nginx -v
which nginx
重装:
sudo apt remove nginx*
sudo apt install nginx
看详细错误:
systemctl status nginx
journalctl -xe
请把以下信息贴出来(任选):
sudo nginx -t 的输出systemctl status nginx 的输出我可以一步一步带你修。