www.
我有一个对和子域有效的 SSL 证书.
。它已启动并运行良好。 上的所有流量都http
重定向到https
,所有裸域流量都重定向到www.
版本。简而言之,一切都结束了https://www.
到目前为止一切顺利。
但是,我还有一个 . com
. 当前具有 apache 级别重定向(当前无法更改 DNS)
目前,访问该https://www.***.com
地址显示证书无效,这当然是正确的 - 它仅适用于www
和。.
.co.uk
问题
如何在没有 .com 的有效 SSL 证书并且不更改 DNS 的情况下https://www.***.com
重定向到?https://www.***.co.uk
技术细节
所有域名都指向同一服务器。为 SSL 版本和非 SSL 版本设置了一个 vhost,两者都有 www 的别名,而 .co.uk 和 .com 则没有 www。
重写规则如下:
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
将所有内容推送至 https。
答案1
如果没有 vlid 证书,则无法发送重定向。重定向是通过 HTTP 协议返回 301 或 302 响应来完成的,或者是通过带有元标头的 html 内容来完成的。要发送这些数据,首先需要使用有效证书设置 SSL 连接。所以不要太吝啬,为 .com 获取几乎免费的 startssl 证书。
如果你不想将该域名指向单独的 IP,则需要设置SNI 支持在 apache 中处理一个 IP 上的多个证书。