Composer curl 错误 60:SSL 证书问题:证书链中的自签名证书

问题描述 投票:0回答:2

我正在使用 Symfony 5,我需要使用 Composer 安装“knplabs/knp-snappy-bundle”,但我收到以下消息:

[Composer\Downloader\TransportException]
  curl error 60 while downloading https://repo.packagist.org/packages.json: SSL certificate problem: self signed certificate in certificate chain

请帮助我

我尝试将 cacert.pem 添加到我的 php.ini 中

curl.cainfo ="C:/wamp64/bin/php/php7.3.21/extras/ssl/cacert.pem"

我尝试在我的composer.json中禁用verify_peer,但没有任何效果。

这是我的作曲家诊断:

Checking composer.json: WARNING
require.composer/package-versions-deprecated : exact version constraints (1.11.99.1) should be avoided if the package follows semantic versioning

Checking platform settings: OK

Checking git settings: OK

Checking http connectivity to packagist: OK

Checking https connectivity to packagist: FAIL
[Composer\Downloader\TransportException] curl error 60 while downloading https://repo.packagist.org/packages.json: SSL certificate problem: self signed certificate in certificate chain

Checking github.com rate limit: FAIL
[Composer\Downloader\TransportException] curl error 60 while downloading https://api.github.com/rate_limit: SSL certificate problem: self signed certificate in certificate chain

Checking disk free space: OK

Checking pubkeys:
Tags Public Key Fingerprint: 57815BA2 7E54DC31 7ECC7CC5 573090D0  87719BA6 8F3BB723 4E5D42D0 84A14642
Dev Public Key Fingerprint: 4AC45767 E5EC2265 2F0C1167 CBBB8A2B  0C708369 153E328C AD90147D AFE50952
OK

Checking composer version: FAIL
[Composer\Downloader\TransportException] curl error 60 while downloading https://getcomposer.org/versions: SSL certificate problem: self signed certificate in certificate chain

Composer version: 2.0.13
PHP version: 7.3.21
PHP binary path: C:\wamp64\bin\php\php7.3.21\php.exe
OpenSSL version: OpenSSL 1.1.1g  21 Apr 2020
cURL version: 7.70.0 libz 1.2.11 ssl OpenSSL/1.1.1g
zip: extension present, unzip present

请帮助我


可能是我的作曲家配置有问题

"config": {
        "optimize-autoloader": true,
        "preferred-install": {
            "*": "dist"
        },
        "sort-packages": true,
        "options": {
            "ssl": {
                "verify_peer": false,
                "allow_self_signed": false,
                "cafile": "C:/wamp64/bin/php/php7.3.21/extras/ssl/cacert.pem",
                "local_cert": "C:/wamp64/bin/php/php7.3.21/extras/ssl/cacert.pem"
            }
        }

    },

php ssl curl composer-php
2个回答
1
投票

这个配置选项:

allow_self_signed
不知从何而来,没有任何作用;它甚至没有出现在composer的文档中。

由于这个误导性的选项,我损失了数小时的宝贵时间。

如果您有类似的问题,我建议使用最新版本的 PHP(显然满足您的要求)和最新的 Composer 版本等。对我有用,但是 YMMV。


0
投票

我遇到了同样的问题,并通过添加以下代码片段将

composer.json
更改为使用
HTTP
而不是默认的
HTTPS

这不是一个好的做法,除非你真的别无选择,否则不要使用它。

"repositories": [
    {
        "packagist": false
    },
    {
        "type": "composer",
        "url": "http://repo.packagist.org/"
    }
]

我已将其放入我尝试在其中安装 laravel 的目录的父目录中。

© www.soinside.com 2019 - 2024. All rights reserved.