【发布时间】:2021-02-24 23:57:04
【问题描述】:
我试图让客户拥有多个域,但出于规范的原因,301 他们使用他们的“永久”域。我遇到了一些奇怪的活动,我很肯定这与我的语法有关,但我不知道问题出在哪里。
我有一个主域 - 我们称之为 permanent_site.com 注意:我安装了 SSL 并为“永久域”工作
我有多个非永久域,我想永久重定向到“永久域”。现在假设我有 2 个非主域:non_p_domain1.com 和 non_p_domain2.com。
这应该行不通吗?
<VirtualHost *:443>
ServerName non_p_domain1.com
ServerAlias non_p_domain2.com
Redirect 301 / https://permanent_site.com/
</VirtualHost>
<VirtualHost *:443>
ServerName permanent_site.com
DocumentRoot /path/to/html
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCertificateFile /path/to/ssl/permanent_site.com.crt
SSLCertificateKeyFile /path/to//ssl/permanent_site.com.key
SSLCertificateChainFile /path/to/ssl/permanent_site.com.ca.crt
</VirtualHost>
这样做的全部目的是防止有人点击https://non_p_domain1.com 并被提供“不安全页面”。相反,我希望他们在访问包含所有 .htaccess 指令的 html 目录之前重定向到永久域。
【问题讨论】:
-
请求
https://non_p_domain1.com时到底发生了什么? -
它在 Chrome 中显示“此页面不安全”警告。
-
这是一个 浏览器 警告,原因是在通过 HTTPS 发出请求时的初始握手期间 SSL 证书无效。除非用户接受无效证书(他们不应该这样做),否则请求永远不会到达您的服务器。
标签: .htaccess ssl redirect https virtualhost