我将以下代码添加到我的 apache 配置文件中:
NameVirtualHost *:443
<VirtualHost *:443>
ServerName domain.com
DocumentRoot /var/www/html
SSLEngine ON
SSLCertificateFile /etc/httpd/conf/ssl/domain.com.crt
SSLCertificateKeyFile /etc/httpd/conf/ssl/decrypted-private-key.pem
SSLCertificateChainFile /etc/httpd/conf/ssl/gd_bundle.crt
ErrorLog logs/ssl.domain.com.error_log
CustomLog logs/ssl.domain.com.access_log combined
</VirtualHost>
Apache 重新启动即可。
但是,当我导航到我的网站时,我收到“不受信任的连接”警告。深入挖掘后,chrome 显示证书名为“phoneme1”(不知道此证书位于何处)并且是自签名的(我的证书由 godaddy 签名)。这让我认为其他地方的设置覆盖了某些内容。关于如何获取正确的 SSL 证书,您有什么想法吗?
这是在 CentOs 6.2 上,运行 apache。
答案1
Chrome 通常会添加“http://www。”如果您输入“domain.com”,那么我假设请求将转到“www.domain.com”,当您使用 NameVirtualHost 时,它是与 domain.com 不同的主机。
因此我建议尝试在您的配置中添加以下行:
ServerAlias www.domain.com
当然你必须重新启动 apache2 或者至少你必须重新加载配置!
编辑(当地时间 22:43):此答案假定所有证书文件均有效且可访问!