【问题标题】:Composer, Windows Server and the infamous "SSL operation failed with code 1" errorComposer、Windows Server 和臭名昭著的“SSL 操作失败,代码 1”错误
【发布时间】:2019-10-27 15:57:44
【问题描述】:

我目前正面临 Composer 的问题,据我所知,OpenSSL。在过去的几天里,我尝试了各种在网上找到的解决方案,但都没有成功。

直截了当,当我尝试用Composer获取一些包时,有时会抛出以下错误:

... file could not be downloaded: SSL operation failed with code 1. OpenSSL Error messages:
error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed
Failed to enable crypto
failed to open stream: operation failed

我在其他 Stack Overflow 帖子中看到的是这个问题与证书问题有关。就像建议的那样,我下载了一些证书(https://raw.githubusercontent.com/bagder/ca-bundle/master/ca-bundle.crthttps://curl.haxx.se/ca/cacert.pem)并在我的 php 中编辑了值 curl.cainfoopenssl.cafile。 ini 文件。不幸的是,它不起作用。

我检查了环境变量,但没有SSL_CERT_FILESSL_CERT_DIR 之类的东西。我试图创建它们并为它们分配一个值,但没有取得更大的成功。

我的系统是 Windows Server 2019,我自己安装了 PHP,但我也尝试了 Wamp 安装。 CURLOpenSSLDLL 位于此处,并且在 php.ini 文件中启用了扩展。我在安装Composer的时候也遇到了这个错误,所以我手动安装了。

我不知道该去哪里找了。有人有建议吗?

非常感谢。

最好的问候,

解决方案

解决方案确实很简单:在我们的组织中,我们拥有自己的根证书和中间证书。我将它们与https://curl.haxx.se/ca/cacert.pem中的pem文件合并,相应地设置php.ini文件,问题就解决了。

【问题讨论】:

  • 您应该发布解决方案作为答案。

标签: php openssl composer-php windows-server


【解决方案1】:

解决方案确实很简单:在我们的组织中,我们拥有自己的根证书和中间证书。我将它们与https://curl.haxx.se/ca/cacert.pem的pem文件合并,相应地设置了php.ini文件,它解决了问题。

【讨论】:

    猜你喜欢
    • 2011-04-14
    • 2015-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-13
    • 1970-01-01
    • 1970-01-01
    • 2012-08-22
    相关资源
    最近更新 更多