我知道这是一个常见的任务,但我无法解决这个问题。我们有一个SSL证书的www.dom-name.com,而不是域-name.com。当访问者打开url https://domain-name.com时,他们会得到一个证书错误。
我尝试了以下RewriteRules & -Conditions:
RewriteEngine On
Rewritecond %{https_host} ^domain-name.com [nc]
RewriteRule ^(.*)$ https://www.domain-name.com/$1 [r=301,nc]
Rewritecond %{http_host} ^domain-name.com [nc]
RewriteRule ^(.*)$ https://www.domain-name.com/$1 [r=301,nc]
RewriteCond %{SERVER_PORT} !^443$
RewriteRule (.*) https://%{HTTP_HOST}$1 [R=301,L]我很感谢你的帮助。
发布于 2014-04-16 10:38:23
你可以尝试任何你想要的,你不会通过重写来解决这个问题。
当然,您可以将请求重定向到您有有效证书的域。但这其实不是你的问题。您手头的问题是,无论您向没有有效证书的域发送原始请求的结果是什么,浏览器都会发出警告/错误。这样做是正确的行为。原因很简单:浏览器收到服务器的回复,该服务器声称是通过https请求的服务器,但这不能通过有效的证书来证明该请求。这显然违反了安全模型,必须导致错误。这就是验证证书的全部要点:确保发送答案的服务器实际上是它声称的系统。如果没有有效的证书,您就不能这样做,无论您尝试什么“解决办法”。
您唯一的选择是为域名获得一个有效的证书,而不需要名称中那个丑陋的"www“。实际上,最好的选择是获得一个“通配符证书”,因此一个对两个域名都有效的证书。
https://stackoverflow.com/questions/23106935
复制相似问题