【发布时间】:2016-05-07 03:10:10
【问题描述】:
我正在使用 Centos 7 托管在 Digital Ocean 盒子上的一个应用程序中的 paypal ipn 脚本。
当我尝试连接到 paypal 沙盒 api 时,我收到错误“无法连接:SSL 已禁用。”
我尝试了几件事,例如在我的 php.ini 文件中添加 curl.cainfo 的路径,如下所示curl.cainfo = /etc/pki/tls/certs/ca-bundle.trust.crt
这就是我的 cURL 脚本的样子
// STEP 2: Post IPN data back to paypal to validate
$ch = curl_init('https://www.sandbox.paypal.com/cgi-bin/webscr'); // change to [...]sandbox.paypal[...] when using sandbox to test
curl_setopt($ch, CURLOPT_SSLVERSION, 4);
curl_setopt($ch, CURLOPT_SSL_CIPHER_LIST, 'ecdhe_rsa_aes_128_gcm_sha_256');
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $req);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_FORBID_REUSE, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Connection: Close'));
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
我在 Linux 服务器设置方面没有太多经验,所以我边走边学。 非常感谢任何帮助或指导
更新:当我在命令行中运行这个命令时
curl --version https://sandbox.paypal.com/cgi-bin/webscr
我收到此错误
curl: (1) Protocol "https" not supported or disabled in libcurl
还有命令curl --version
显示curl 7.42.1 (x86_64-unknown-linux-gnu) libcurl/7.46.0
所以我猜新问题是如何在 libcurl 中启用 https?
【问题讨论】: