下面按常见调试场景给你一个比较系统的 Debian + Apache 调试指南,从“看日志 → 查配置 → 排错”一步步来。
dpkg -l | grep apache2
systemctl status apache2
启动 / 停止 / 重启:
sudo systemctl start apache2
sudo systemctl stop apache2
sudo systemctl restart apache2
sudo tail -f /var/log/apache2/error.log
sudo tail -f /var/log/apache2/access.log
如果站点有独立日志(虚拟主机),路径通常在:
/var/log/apache2/你的站点名-error.log
sudo apache2ctl configtest
✅ 输出 Syntax OK 才正常
apache2ctl -M
ls /etc/apache2/sites-enabled/
启用站点:
sudo a2ensite example.conf
sudo systemctl reload apache2
可能原因:
Directory 权限检查:
ls -ld /var/www/html
示例正确配置:
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
看 error.log,常见:
.htaccess 语法错误sudo ss -tulnp | grep :80
编辑:
sudo nano /etc/apache2/apache2.conf
修改:
LogLevel warn
# 改为
LogLevel debug
然后:
sudo systemctl restart apache2
sudo apt install php libapache2-mod-php
测试:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
浏览器访问:
http://服务器IP/info.php
sudo ufw allow 80
sudo ufw allow 443
✅ Apache 是否在跑
✅ error.log 说什么
✅ configtest 是否 OK
✅ 虚拟主机是否启用
✅ 文件权限是否正确
✅ 端口是否通
如果你愿意,可以直接贴一段 error.log 或你的虚拟主机配置,我可以帮你精确分析。