子域和SSL>如何在* .example.com和根目录上提供SSL

我知道你可以在任何带有通配符SSL证书的子域中提供SSL,但是你怎么做到这一点,并且在根目录下也有SSL(即,当有人只inputhttps://example.com/而没有www )? 我会只安装通配符证书,还有第二个证书来处理根:443个请求? 我不能使用mod_rewrite,因为在提醒用户缺lessSSL之前,浏览器不会得到那么多。

包含“X509v3主题备用名称”属性中描述的所有域的一个证书可以完成这项工作。 大多数现代networking浏览器支持这个AFAIK,但我不确定知名的商业CA是否颁发这样的证书。

许多CA(包括Comodo和DigiCert)将其基本域名作为通配符证书中的免费SAN: http ://www.sslshopper.com/ssl-certificate-comparison.html?ids=26,13,45

所以你可以使用一个通配符证书来保护domain.com和anything.domain.com。 这样你就不会有任何错误,但你仍然可能想redirect到www。

你需要2个证书才能工作。

我正在使用mod_rewrite来达到这个目的,我使用以下规则将请求从https://domain.com/application/redirect到https://www.domain.com/application/

 RewriteEngine On # Use correct hostname RewriteCond %{HTTP_HOST} ^example\.com$ RewriteRule ^(.*)$ https://www.example.com/$1 [R=301, L] 

所以你只需要一个通配符SSL证书。