小编Bri*_*ter的帖子

无法切换 Apache 以使用新的 SSL 证书

我目前有一个运行 Ubuntu Linux 和 Apache 2.0 的网站,该网站使用 GoDaddy 颁发的 SSL 证书。由于我通常对 GoDaddy 不感兴趣,因此我决定从其他供应商处获取 SSL 证书,但在尝试更改我的 Apache 配置以使用新证书时遇到了问题。

我的原始 Apache 配置的 SSL 设置如下所示:

SSLEngine on
SSLProtocol all
SSLCertificateFile /etc/apache2/ssl/store.fatcatsoftware.com.crt
SSLCertificateKeyFile /etc/apache2/ssl/fatcatstore.key
SSLCertificateChainFile /etc/apache2/ssl/gd_intermediate_bundle.crt
SSLProxyEngine on
Run Code Online (Sandbox Code Playgroud)

我安装了新的 SSL 证书并将 Apache 更改为以下内容:

SSLEngine on
SSLProtocol all
SSLCertificateFile /etc/apache2/ssl_geotrust/store.fatcatsoftware.com.crt
SSLCertificateKeyFile /etc/apache2/ssl_geotrust/store.fatcatsoftware.com.key
SSLProxyEngine on
Run Code Online (Sandbox Code Playgroud)

我已经对所有路径进行了两次和三次检查,它们都是正确的。但是,当我重新启动 Apache 并尝试加载网站时,我收到来自 Web 浏览器的错误消息,指出证书是由未知机构签署的。不过,真正奇怪的部分是它还说证书是由 GoDaddy 颁发的,所以 Apache 甚至没有以某种方式使用新证书,即使配置文件指向它。我什至使用openssl x509 -noout -text -in server.crt再次检查了证书文件,它验证了该路径上的证书确实是新安装的证书。

作为进一步的测试,我尝试使用相同的证书/密钥文件并将它们安装在我自己运行 OS X 的机器上。我像在实际服务器上一样设置了 Apache 配置文件,并编辑了 /etc/hosts 以便键入在我的域名中会重定向到 localhost,以避免在加载站点时出现域名不匹配。当我尝试该设置时,一切正常!所以看起来证书本身并没有错。

两种设置之间唯一的主要区别是 a) OS X 机器有 Apache …

ssl ssl-certificate apache-2.2

2
推荐指数
1
解决办法
5238
查看次数

标签 统计

apache-2.2 ×1

ssl ×1

ssl-certificate ×1