Linux 下 Apache 配置失败的原因非常多,常见原因可以归纳为以下几类。你可以对照排查:
最常见原因
httpd.conf 或 sites-enabled/*.conf 后未检查语法AH00526: Syntax error on line xx of ...
✅ 解决方法:
apachectl configtest
# 或
httpd -t
根据提示修正对应行。
Apache 默认使用 80 / 443
Address already in use: AH00072
✅ 检查:
ss -lntp | grep ':80'
✅ 解决:
Listen 80 为其他端口✅ 解决:
chown -R www-data:www-data /var/www/html
chmod -R 755 /var/www/html
✅ 检查:
getenforce
✅ 临时关闭测试:
setenforce 0
✅ 正确做法:
chcon -R -t httpd_sys_content_t /var/www/html
例如:
DocumentRoot /var/www/html
<Directory /var/www/html>
Require all granted
</Directory>
常见错误:
Require all grantedAllow from allServerName 未设置VirtualHost 冲突✅ Ubuntu 启用站点:
a2ensite yoursite.conf
systemctl reload apache2
✅ 检查:
ufw status
# 或
firewall-cmd --list-all
✅ 放行:
ufw allow 80,443/tcp
例如:
rewrite 但没开 mod_rewrite✅ Ubuntu:
a2enmod rewrite
systemctl restart apache2
tail -f /var/log/apache2/error.log
# 或
tail -f /var/log/httpd/error_log
configtest 无报错如果你愿意,可以把:
发出来,我可以直接帮你定位具体原因。