我的服务器上有几个网站。例如:domain1.com 和 domain2.com。如果用户请求不存在的子域(例如:a.domain2.com),他将被重定向到 domain1.com。如果发生这种情况,我想显示 404 页面。对于 http 流量,我对 vhost 使用这样的配置:
<VirtualHost _default_:80>
Redirect 404 /
ErrorDocument 404 "Page Not Found"
</VirtualHost>
我的网站也有 https 版本。我尝试过这样做:
<VirtualHost _default_:433>
Redirect 404 /
ErrorDocument 404 "Page Not Found"
</VirtualHost>
但是我的 https 网站无法打开。如何实现 https 的 http 行为?
答案1
我现在的猜测是以下两种情况之一:
- 您没有为 HTTPS 虚拟主机指定 SSL 证书
- 您的证书适用于 domain1.com,但不是通配符证书和/或没有配置 a.domain1.com 的主题备用名称。
如果您希望 HTTPS 适用于 a.domain1.com 和 b.domain1.com 以及 whatever.domain1.com,则最好的选择是获取 *.domain1.com 的通配符证书