Apache-Httpd
萬用字元 SSL 證書不適用於裸域
我
*.example.com
在 Apache/Ubuntu 14.04 上部署了萬用字元證書 (Comodo PlatinumSSL)。如果客戶端訪問https://www.example.com
但https://example.com
在 Firefox 中拋出這個,一切正常:example.com uses an invalid security certificate. The certificate is only valid for *.example.com (Error code: ssl_error_bad_cert_domain)
從 vhost 文件中提取:
<IfModule mod_ssl.c> <VirtualHost *:443> SSLEngine on ServerName example.com ServerAlias www.example.com *.example.com DocumentRoot /var/www/html SSLCertificateFile /etc/ssl/localcerts/example_com.cer SSLCertificateKeyFile /etc/ssl/localcerts/example_com.key SSLCertificateChainFile /etc/ssl/localcerts/example_com_interm.cer </VirtualHost> </IfModule>
我如何在沒有警告的情況下同時獲得
https://www.example.com
和工作?https://example.com
萬用字元匹配一個最左邊的標籤。那是
*.example.com
匹配www.example.com
但不是example.com
orsub.foo.example.com
。這意味著您需要獲得包含*.example.com
和example.com
作為主題替代名稱的證書,或者如果您只需要www
和裸域名,那麼您可以獲得更便宜的證書,其中僅包含www.example.com
和example.com
.
有關帶有和不帶有 www 域的證書的更多資訊,請參見此處。
這篇文章的主題與您的問題相同,基本上說明除了購買新證書之外沒有其他解決方法