15. July 2009 15:50
Background: I have two different version of Apache/PHP/MySQL running on two different servers.
On Server 1: Apache/2.2.11 , PHP Version 5.2.8
On Server 2: Apache/2.0.58 , PHP Version 5.1.4
We are integrating the Paypal payment system; Server 1 didn't complaint much but on the other hand Server 2 was rather challenging. It showed us the error Warning: fsockopen() [function.fsockopen]: unable to connect to ssl://www.sandbox.paypal.com:443 (Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP?) .
Warning: fsockopen() [function.fsockopen]: unable to connect to ssl://www.sandbox.paypal.com:443 (Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP?) in
Solution: We found a bunch of good articles out there, but most of them failed to address to the user on how to “TURN ON THE OpenSSL”. Here is the link that will give us a brief tutorial on how to turn on the OpenSSL: http://www.jm-solutions.com/OpenSSL/Introduction/introduction.php. The instructions are very straight forward.
Question: Do I need to Install or setup OpenSSL?
Answer: The chances are very high if you are using the version like I had on Server 2. Run the phpinfo();
check and see if you have something like tcp, udp, ssl, sslv3, sslv2, tls under Registered Stream Socket Transports.
Also, make sure you have extension=php_openssl.dll uncommented in php.ini
To check the location of your php.ini, run the phpinfo().
And the errors message should go away and is time to test the Paypal payment system. It worked for me, and I hope it work for everyone out there.