I am using Authorize.net in my application(its in OSCOMMERCE) , When the user making payment its returning empty response. I debugged and find that it returning this error:
Protocol https not supported or disabled in libcurl
I am sending a prober url starts with https there is no space in that
https://secure.authorize.net/gateway/transact.dll
My application in shared hosting server. My doubt is this is server side problem or Programming problem ?
Create a script called info.php and in it put <?php phpinfo(); ?>
. Save it somewhere on your site so you can access it from a browser.
Find the curl section and check what Protocols are supported. If https
is not listed, then cURL was not built with SSL support and you cannot use https.
You can also look in the very first section for Registered PHP Streams
and see if https
is listed. If so, then you can fallback to use PHP's socket functions or functions such as file_get_contents()
or fopen
with a context.
Since you mention you are on a shared host, request that your host recompile PHP so that both PHP and curl are built with OpenSSL support so you can use encryption, otherwise you will need to find another solution.
For those that have https support but still get an error similar to below
[curl] 1: Protocol %20https not supported or disabled in libcurl [url] %20https://www.example.com/%20
Ensure that the URL is valid
- Try on a basic URL such as https://www.example.com
- Check your URLs and make sure no spaces at start/end of URL (as shown above as %20)
- Check for characters in your URL likely to break the curl request
I had this problem and it was because of space in url:
' https://www.google.com/recaptcha/api/siteverify'
as you see there is a space before https