Php 如何在我的paypal ipn中使用curl?

Php 如何在我的paypal ipn中使用curl?,php,ssl,curl,paypal,Php,Ssl,Curl,Paypal,我在我的捐赠网站上使用贝宝,我需要将它存储在数据库中。我正在使用PayPal IPN来做到这一点。以前,我使用的免费网络主机是000webhost。但一个月后,它没有起作用。它有一个错误 unable to connect to ssl://www.sandbox.paypal.com:443 我没有更改任何代码。但是有一些建议是,免费的WebHost不支持SSL。我的IPN看起来像这样 $fp = fsockopen ('ssl://www.sandbox.paypal.com', 443,

我在我的捐赠网站上使用贝宝,我需要将它存储在数据库中。我正在使用PayPal IPN来做到这一点。以前,我使用的免费网络主机是000webhost。但一个月后,它没有起作用。它有一个错误

unable to connect to ssl://www.sandbox.paypal.com:443
我没有更改任何代码。但是有一些建议是,免费的WebHost不支持SSL。我的IPN看起来像这样

$fp = fsockopen ('ssl://www.sandbox.paypal.com', 443, $errno, $errstr, 30);
if (!$fp) {
    $mail = mail('myemail', 'Error at 21', "{$errnum}: {$errstr}");
} else {
    //insert database here.
}

我的问题是,我读过000webhost,它在免费的WebHost中支持curl。如何将ssl更改为curl?

您的服务器应支持“SHA-256”,并应使用“G5”

如果您想尝试卷曲,可以使用

如果您想忽略SSL(不建议这样做,只是为了测试),您可以尝试在第58,59行中禁用SSL

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
我发现,如果有帮助的话:

$fp = fsockopen('tls://www.sandbox.paypal.com', 443, $errno, $errstr, 30); 
如果您决定尝试Vimalnath建议的curl代码,我必须添加下面的行以使其在沙箱中工作:()


这是我的ipn.log[2016-02-04 01:23 America/New_York]中的消息无法连接到PayPal以验证ipn消息:错误:14077410:SSL例程:SSL23_GET_SERVER_HELLO:sslv3警报握手失败您需要升级您的服务器谢谢先生。我刚升级了我的域名。我还在phpmyadmin中使用了触发器,免费域不支持它,所以我决定升级。:)
curl_setopt($ch, CURLOPT_SSLVERSION, 6);