What is cURL?
cURL is a widely used method of transferring data from and to (web)servers via URLs. It is installed on most, if not all webservers which makes it an ideal tool to use. Really Simple SSL uses cURL for a number of things. The plugin uses cURL to open your webpage to check if the site can load over SSL, to test if your certificate is valid, and to connect to really-simple-ssl.com to activate your Really Simple SSL Pro license. cURL works fine on the vast majority of webservers. However, it can fail in some environments, resulting in a cURL error. cURL errors cause some of the most common issues when using Really Simple SSL, for example, your license cannot activate or the plugin cannot retrieve the webpage to test for the mixed content fixer marker.
Important: cURL errors usually don’t break the front-end of your site, meaning that the site can still be visited by your users.
Why does a cURL error occur?
cURL errors are often caused by an outdated version of PHP or cURL. cURL errors are a good example of server-related errors. These are errors that aren’t caused by WordPress or Really Simple SSL, but by a server configuration. These errors usually won’t cause any issues on the front end of your site. If the site loads fine on https:// the error doesn’t impact your visitors.
How to fix a cURL error
Since cURL errors are server-related they can be fixed by your hosting provider. They have access to the server and can update PHP and/or cURL for you. This will solve a cURL error in most cases. If this doesn’t fix the cURL error, your hosting provider can tell you why cURL is not working correctly. It could be your hosting provider uses some form of security (for example a firewall) that is preventing the cURL request from completing.
cURL errors are given with a cURL error code, which provides more information about the reason why cURL has failed. This information is useful in troubleshooting the issue.
Most common cURL errors
cURL error 28: Connection timed out
cURL error 28 occurs when the cURL request isn’t completed in a certain amount of time. This happens when the cURL timeout value is set too low or when a firewall is blocking the cURL request. Another possibility is a security module, for example, the Apache mod_security module. To fix cURL error 28 you can contact your hosting provider.
cURL error 60: SSL certificate problem: unable to get local issuer certificate:
cURL error 60 occurs when the site uses an invalid SSL certificate. This error often occurs on localhost development environments since these usually don’t have a valid SSL certificate. If this error happens on your live site, contact your hosting provider to install a valid SSL certificate for you.
cURL error 35: SSL connect error
cURL error 35 is caused by a misconfiguration on the server. For example, an outdated certificate within cURL, or a mismatch in ciphers. Contact your hosting provider for a fix.