XAMPP on Windows srv 2012 R2 IPN issue


XAMPP on Windows srv 2012 R2 IPN issue

我在win服务器2012 R2上有最新的xampp,并且已成功为我的域安装了SSL证书,并且可以从外部访问(我的站点:https://www.n-aos.com/)。网站服务还行!

我从这里使用官方PayPal php ipn 代码:https://github.com/paypal/ipn-code-samples/blob/master/paypal_ipn.php#L58-L59,并且标记了不起作用的问题,第 58 行和第 59 行。

如果我将CURLOPT_SSL_VERIFYPEERCURLOPT_SSL_VERIFYHOST设置为 0,那么服务工作正常,但我不想在没有验证的情况下工作......

我也尝试从 (http://curl.haxx.se/docs/caextract.html) 下载 cabundle 证书,并且有未注释的行来使用该证书,但错误与没有第 79 行和第 80 行相同

调试错误日志只有以下行:

[2015-01-23 10:36 Europe/Zagreb] Can't connect to PayPal to validate IPN message: SSL certificate problem: unable to get local issuer certificate

如果你能想到我能做些什么,我将不胜感激。顺便说一句,几个月前,当它从 linux box(一些 debian 发行版)托管时,这种用于 ipn 检查的代码的相同和平确实有效,如果这有帮助的话。

谢谢,克雷索

好的,经过长时间彻底的测试并试图让 PayPal IPN 工作,我的同事发现了什么疾病,所以我会把它贴在这里,让其他人在我的鞋子里睡个好觉:)

我们的服务器 ipn 地址是 https,需要执行此步骤。

在正在与之交谈的 php 文件中PayPal添加以下行:

curl_setopt($ch, CURLOPT_SSLCERT, 'c:/path/some.crt');
curl_setopt($ch, CURLOPT_SSLKEY, 'c:/path/some.key');
curl_setopt($ch, CURLOPT_CAINFO, 'c:/path/cabundle.crt');

对于第一行和第二行,将完整路径添加到卷曲为PayPal的域的证书文件。

对于第三行,这是棘手的部分,请从此页面添加第二个证书

http://curl.haxx.se/docs/caextract.html

具有 1024 位长的威瑞信密钥的那个! :)

奇怪的是,一些SSL网站的测试确实通过了新的cabundle,比如谷歌,银行网站,但PayPal失败了。

指向 github 上的证书文件的直接链接位于此处:2015 年 8 月 13 日的 github 链接

干杯