我们有两条A
条记录指向相同的公共IP地址:
www.example.com IN A 192.*.*.*
example.com IN A 192.*.*.*
我们有Verisign颁发给www.example.com
的证书。现在,当用户键入https://www.example.com/xyz
时,一切都正常工作。
但是当我们使用https://example.com/xyz
时,浏览器会抛出错误:
“此网站的安全证书存在问题”
并要求用户做出决定,如果他们信任并希望继续。
现在应该是最佳做法:
*.example.com
在DNS上使用以下设置:
www.example.com IN A 192.*.*.*
example.com IN CNAME www.example.com
在.Net管道中编写HTTP模块,以便在用户输入example.com/xyz
到www.example.com/xyz
时重定向用户。我知道不推荐这样做。
我们想做chase.com
正在做的事情。如果您输入chase.com
,则会转到https://www.chase.com/
。
答案 0 :(得分:3)
以上都不是。您应获取涵盖两个域的SSL证书:www.mydomain.com
和mydomain.com
。
根据您的建议:
1)拥有*.mydomain.com
的单个域的通配符证书在打开没有任何前缀的mydomain.com时仍然会出错。您当然可以获得*.mydomain.com
和mydomain.com
2)为了SSL,CNAME或A - DNS用于获取您的网络服务器的地址(A记录)并不重要,之后浏览器仍然期望SSL证书与您在地址栏中输入的内容完全匹配
3)这适用于 http 请求,但当用户键入 https://mydomain.com 时,浏览器会检查SSL证书 之前它处理重定向请求,仍然会显示警告。
P.S。你有这个问题,因为CA行业完全搞砸了。他们的产品页面看起来都像“超级256位加密”(证书与加密强度无关),移动支持(无论是移动设备还是大型机,证书都完全相同),以及“包含免费网站密封”(网站印章是放置在您网站上的CA广告的绝佳名称。
所有不重要的事情,比如它的CRL或OCSP,或它所涵盖的域名 - 从未提及过。