CURL from PHP doesn't include any trusted certificate by default. This would mean that as long as you dont tell it which certificates to trust, any https connection it makes will be untrusted, and thus, stopped. The command setopt CURLOPT_SSL_VERIFYPEER false above basically tells curl to not verify certificates for HTTPS requests. If you dont want to bypass CA verification like you did, you can set up a certificate folder somewhere on your server to determine the trusted certificates and have your php.ini refer that folder. You can set up a certificate folder by steps like below : 1. Download a root certificate bundle from the curl website http://curl.haxx.se/docs/caextract.html. If the https site you're connecting uses other certificate, you can download it using a web browser as per the 'proper fix' in the link you gave above. 2, Then set a path to the file on the server in your php.ini file, e.g. on Windows: curl.cainfo=c:apachecacertcacert.pem