cURL Error #:SSL certificate problem: unable to get local issuer certificate code example
Example 1: cURL error 60: SSL certificate problem: unable to get local issuer certificate (see https://curl.haxx.se/libcurl/c/libcurl-errors.html)
Do not ever modify files in the vendor/ folder. Ever. They can and will be
overwritten on the next composer update you run.
Here is my Solution for WampServer
I am using PHP 7.1.9 for my WampServer, so change 7.1.9 in the example below
to the version number you are currently using.
1. Download this file: http://curl.haxx.se/ca/cacert.pem
2. Place this file in the C:\wamp64\bin\php\php7.1.9 folder
3. Open php.iniand find this line:
;curl.cainfo
4. Change it to:
curl.cainfo = "C:\wamp64\bin\php\php7.1.9\cacert.pem"
5. Make sure you remove the semicolon at the beginning of the line.
6. Save changes to php.ini, restart WampServer, and you're good to go!
Example 2: Fatal error: Uncaught GuzzleHttp\Exception\RequestException: cURL error 60: SSL certificate problem: unable to get local issuer certificate
1. Download the certificate bundle.
2. Put it somewhere. In my case, that was c:\wamp\ directory (if you are using
Wamp 64 bit then it's c:\wamp64\).
3. Enable mod_ssl in Apache and php_openssl.dll in php.ini (uncomment them by
removing ; at the beginning). But be careful, my problem was that I had two
php.ini files and I need to do this in both of them. One is the one you get
from your WAMP taskbar icon, and another one is, in my case, in
C:\wamp\bin\php\php5.5.12\
4. Add these lines to your cert in both php.ini files:
curl.cainfo="C:/wamp/cacert.pem"
openssl.cafile="C:/wamp/cacert.pem"
5. Restart Wamp services.
Example 3: SSL certificate problem: unable to get local issuer certificate
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
Example 4: SSL certificate problem: unable to get local issuer certificate
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);