在 Debian 上排查 Apache(通常是 apache2)问题,可以按下面步骤系统地“查错”。
systemctl status apache2
或
service apache2 status
常见状态:
active (running):正常failed:启动失败(看日志)inactive:没启动sudo tail -n 50 /var/log/apache2/error.log
实时查看:
sudo tail -f /var/log/apache2/error.log
常见错误示例:
Permission denied → 文件/目录权限问题Address already in use → 端口被占用(如 80)Syntax error → 配置文件写错sudo apache2ctl configtest
或
apache2 -t
输出:
Syntax OK:配置没问题sudo ss -tulnp | grep :80
或
sudo netstat -tulnp | grep :80
常见冲突:
ls /etc/apache2/sites-enabled/
测试某个虚拟主机:
apache2ctl -S
检查:
DocumentRoot 是否存在a2ensite 启用ls -ld /var/www
ls -l /var/www/html
Apache 用户通常是:
www-data
修复示例:
sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/html
apache2ctl -M
启用模块:
sudo a2enmod rewrite
sudo systemctl restart apache2
sudo ufw status
放行 HTTP:
sudo ufw allow 80
sudo ufw allow 443
✅ systemctl status apache2
✅ apache2ctl configtest
✅ tail /var/log/apache2/error.log
✅ 端口是否被占用
✅ 站点是否启用
✅ 文件权限是否正确
如果你愿意,可以把 具体错误信息(最好是 error.log 里的几行)贴出来,我可以直接帮你定位问题。