我正在尝试更新WordPress本身以及插件和主题 .
从http://downloads.wordpress.org/release/wordpress-4.4.1-new-bundled.zip更新WordPress下载更新 . 下载失败:SSL证书问题,验证CA证书是否正常 . 详细信息:错误:14090086:SSL例程:SSL3_GET_SERVER_CERTIFICATE:证书验证失败安装失败
我在这里读到:https://help.github.com/articles/error-ssl-certificate-problem-verify-that-the-ca-cert-is-ok/
当您收到此错误时,可能意味着您的CA已过期且需要更新 . 通常,更新操作系统也会更新CA,并解决问题 .
我向主人求助,他们说:
我在您发送的链接中获得了基础参考 . 但是,只有在使用ssl站点/证书时,才会应用根证书颁发机构 . 您发送的屏幕截图中的插件升级路径是基于http的网站 - 这就是我没有得到相关性的原因 . 如果您正在呼叫http链接,则不使用ssl且不相关 .
但是,此请求是通过HTTP进行的,并且未使用SSL . 为什么我收到此错误?
4 回答
以下是下载时发生的情况:
所有下载都被重定向到ssl,证书由Go Daddy的最新CA根签名 .
从here下载wordpress git site的最新证书,将其保存到wp-includes / certificates目录中作为ca-bundle.crt,确保下载的.crt替换当前的.crt,然后再次尝试更新 .
所有
wordpress.org
都是基于SSL的站点 . 任何HTTP请求只是通过他们的nginx实例通过HTTPS路由,可能有这样的规则:您对该文件的链接重定向到HTTPS . 您可以在http://www.redirect-checker.org看到它的实际效果
至于为什么你要验证证书,因为它无法获得正确的链(CA) . 你可以see here,正确配置wordpress.org . 显然,您的服务器赢得't trust the chain provided by the server. Most likely it'配置为仅接受已安装的CA.
有几种方法可以玩这个 . 两者都涉及到GoDaddy Repository并下载Go Daddy安全证书颁发机构 - G2文件(它应该是this file) .
现在,你需要做的是
要求您在其服务器上安装此链文件 . 如果您将它们指向存储库,它们应该为您执行此操作 . 这应该是微不足道的 .
破解WP更新脚本以直接使用CA链 . 我的赌注是它使用this file中的CURL请求来进行请求 . 它可能是另一个文件 . 您可以告诉执行下载的脚本使用该CA文件 . 这对你来说不是一个好的解决方案,因为你可能不得不每次都破解该脚本 .
我也遇到了Wordpress 4.4.1的301问题,这似乎有不同的原因,但我的研究也从版本更改日志中得出结论:
Removed SSL certificates causing errors in WP 4.4
完整版发行说明:Wordpress Version 4.4.1
在差异中,您还可以看到从以下位置删除的许多证书: