无法安装新的SSL证书(Apache2虚拟主机)

尝试为Apache2安装新的SSL证书时遇到问题。 我们在80端口上运行正常的stream量,在443上运行SSL。

我修改了httpd.conf ,只重命名/etc/httpd/conf/2009certs/ to /etc/httpd/conf/2010certs/

 <VirtualHost ServerIP:443> # This parameter already existed as-is SSLEngine on # These are the parameters I changed (already existed w/ diff paths.) SSLCertificateFile /etc/httpd/conf/2010certs/server.crt SSLCertificateKeyFile /etc/httpd/conf/2010certs/server.key SSLCertificateChainFile /etc/httpd/conf/2010certs/intermediate.pem SSLCACertificateFile /etc/httpd/conf/2010certs/gs_root.pem # Other parameters here; ServerAdmin, DocumentRoot, ServerName, ErrorLog, etc.... </VirtualHost> 

存在*:80另一个VirtualHost块,但不对该区域进行更改。

用新的证书path保存httpd.conf后,注释掉旧的2009path,并尝试重新启动Apache,我得到/var/log/httpd/error_loghttpd无法启动:

您在标准HTTPS(443)端口上configuration了HTTP(80)!

除证书path之外,没有任何更改,并且在将httpd.conf更改回使用旧证书后,te问题消失。

什么可能导致这个?

问题最终是由于在RSA私钥文件server.key上存在密码短语 – apache启动脚本没有configuration为提供一个。

我不太清楚为什么这会导致上面的错误信息。 我猜测,当Apache读取SSL私钥文件失败,并且无法在443上以HTTPS启动时,apache在端口80上回退到不同的VirtualHostconfiguration。

我有一个类似的问题,但原因是其中一个虚拟主机的域parsing为不同的服务器的IP。