You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Apache SSL VirtualHost显示测试页面,HTTP正常的问题排查求助

Apache HTTPS访问返回测试页面的排查方案

1. 目录配置不匹配(最可能的原因)

你的443端口虚拟主机中,<Directory>指定的路径是/var/www/html,但DocumentRoot是/var/www/test.site/html,两者不匹配。Apache会因为找不到对应目录的权限设置, fallback到默认的测试页面。

修正后的<Directory>配置应该是:

<Directory /var/www/test.site/html>
        AllowOverride none
        Order Allow,Deny
        Allow from all
</Directory>

2. SSL模块未加载

Apache需要启用mod_ssl模块才能处理HTTPS请求,执行以下命令检查模块是否加载:

httpd -M | grep ssl

如果没有输出ssl_module (shared),需要启用该模块:

  • 对于RHEL/CentOS:编辑httpd.conf,确保存在LoadModule ssl_module modules/mod_ssl.so
  • 对于Debian/Ubuntu:执行a2enmod ssl

3. 未监听443端口

检查Apache配置中是否包含Listen 443指令,确保HTTPS请求能被Apache接收。可以在httpd.conf或ssl.conf中添加:

Listen 443

4. 默认SSL虚拟主机优先级问题

如果系统中存在默认的SSL虚拟主机配置(比如/etc/httpd/conf.d/ssl.conf中的<VirtualHost _default_:443>),Apache会优先匹配这个默认配置,导致你的自定义虚拟主机不生效。

  • 可以删除或修改默认配置的DocumentRoot为你的站点路径
  • 或者将你的自定义虚拟主机配置文件放在默认配置文件之前加载(比如命名为00-test-site.conf,确保加载顺序优先)

5. 配置未生效或语法错误

修改配置后必须重启Apache才能生效:

systemctl restart httpd

重启前可以先验证配置语法是否正确:

httpd -t

如果输出Syntax OK才说明配置无语法错误。

6. 浏览器缓存干扰

浏览器可能缓存了旧的测试页面,尝试使用隐私模式访问,或者清除浏览器缓存后再测试。


内容的提问来源于stack exchange,提问作者user9575086

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 05:17:07