两个别名的单一证书

时间:2013-02-20 15:45:08

标签: linux apache ssl

使用URL重写等使用某种重定向可以在apache中使用单个证书作为两个别名域名吗?喜欢以下我想将example.com重定向到www.example.com

RewriteEngine on
RewriteCond %{HTTP_HOST} ^example\.com$
RewriteCond %{SERVER_PORT} =443
RewriteRule ^ https://www.example.com%{REQUEST_URI} [L,R=301]

问题是我在www.example.com域注册了SSL证书,我有CNAME example.com但我在example.com上收到SSL警告,我可以使用上面的技巧使其工作吗?

2 个答案:

答案 0 :(得分:1)

出于安全原因,每个证书仅限于域。有些证书可以说是通配符证书之类的一堆域名,这样的证书可以解决你的问题,但是在纪念中它们的成本是正常价格的两倍或三倍。

另一种方法是两个域的证书,但配置起来不是很简单。但是,此证书需要由证书颁发机构签名。

所以现在除了购买另一张证书外你什么也做不了。

我差点忘了,你可以从https://startssl.com/获得免费证书。不是你的名字,但对于重定向,它应该没问题。

答案 1 :(得分:1)

如果证书有多个主题备用名称,或者它是通配符证书(或两者),则可以拥有对多个主机名有效的证书。

通配符证书对www.example.comexample.com并不特别有用,因为点不是模式的一部分,因此*.example.comexample.com不匹配。在这种情况下,这样的通配符证书无论如何都需要example.com的额外SAN。

CA对于具有多个SAN的证书具有各种商业名称,并且通常会为此收取额外费用。

然而,许多人认为www是一个特例。当您申请www.example.com时,某些CA将为example.comwww.example.com颁发SAN认证,无需额外费用。

您也可以使用两个不同的证书,但除非您知道所有客户端都支持服务器名称指示(SNI),否则每个客户端都需要一个单独的IP地址。