laravel : cURL error 60: SSL certificate unable to get local issuer certificate

后端 未结 3 547
不思量自难忘°
不思量自难忘° 2021-01-07 15:17

Ubuntu: 15.04

Laravel: 5.4.32

GuzzleHttp\\Guzzle: ~6.0

Hi there

I have the following error when I am trying to reset a password using Laravel

相关标签:
3条回答
  • 2021-01-07 15:43

    The problem turned out to be the IT Department had updated the firewall which had, in turn, somehow blocked the server from making requests (this is the opposite from what they told me at the time of posting the question). Once it was allowed to make requests again it worked.

    0 讨论(0)
  • 2021-01-07 15:45

    Add cacert.pem file in your project, download file from

    https://curl.haxx.se/ca/cacert.pem

    copy that downloaded the certificate in your /vendor/guzzlehttp/guzzle/src folder. change file Client.php find the function called getDefaultOptions()

    replace $settings array with this,

    $settings = [
            'allow_redirects' => true,
            'exceptions'      => true,
            'decode_content'  => true,
            //'verify'          => true
            'verify'          => dirname(__FILE__).'/cacert.pem',
    ];
    

    what I did is for verifying added the downloaded file configuration, just changed the value for verify.

    if you want to send curl request insecurely you can disable SSL certificate check, by setting verify => false

    Warning: This makes the request absolute insecure

    0 讨论(0)
  • 2021-01-07 16:04

    I had the similar problem. No need to change /vendor/guzzlehttp/guzzle/src/Client.php

    Maybe this can help you.

    1. Download cacert.pem file from https://curl.haxx.se/docs/caextract.html
      Put the cacert.pem somewhere you like.

    2. Edit php.ini

    two lines:

    curl.cainfo=D:/Servers/php/sslfiles/cacert.pem  
    openssl.cafile=D:/Servers/php/sslfiles/cacert.pem  
    
    1. Restart apache httpd.
    0 讨论(0)
提交回复
热议问题