composer 安装扩展包,SSL operation failed with code
发布日期: 2022/07/22 阅读总量: 56

报错详情

Package operations: 10 installs, 0 updates, 0 removals
  - Installing topthink/think-captcha (v1.0.7): Downloading (failed)       
Downloading (failed)       
Downloading (failed)       
 Failed, trying the next URL (0: The "https://dl.laravel-china.org/topthink/think-captcha/0c55455df26a1626a60d0dc35d2d89002b741d44.zip" file could not be downloaded: SSL operation failed with code 1. OpenSSL Error messages:
error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed
Failed to enable crypto
failed to open stream: operation failed)Downloading (connecting...)

解决办法

之前遇到过类似的问题,都是替换默认 ssl 证书,方式如下:

# 查看默认证书位置
php -r "print_r(openssl_get_cert_locations());"
Array
(
    [default_cert_file] => /usr/local/openssl/cert.pem
    [default_cert_file_env] => SSL_CERT_FILE
    [default_cert_dir] => /usr/local/openssl/certs
    [default_cert_dir_env] => SSL_CERT_DIR
    [default_private_dir] => /usr/local/openssl/private
    [default_default_cert_area] => /usr/local/openssl
    [ini_cafile] => /usr/local/openssl/cert.pem
    [ini_capath] => 
)
# 下载最新证书
wget http://curl.haxx.se/ca/cacert.pem
# 替换最新证书
cp cacert.pem /usr/local/openssl/cert.pem