一個(gè)客戶(hù)網(wǎng)站需要接入paypal網(wǎng)頁(yè)準(zhǔn)標(biāo)版支付,我們做完程序做測(cè)試的時(shí)候,在paypal日志中,總是報(bào)錯(cuò)14090086,在網(wǎng)絡(luò)中查找了很多相關(guān)方面的資料,都沒(méi)有找到答案,后來(lái)打電話(huà)去paypal技術(shù)部才最終到了解決辦法。主要是由于我的服務(wù)器SSL證書(shū)過(guò)期或不存在的問(wèn)題。
我們先看一下代碼片斷:
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_SSL_VERIFYPEER, 1);//在這里出現(xiàn)了問(wèn)題
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_FORBID_REUSE, 1);
if(DEBUG == true) {
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLINFO_HEADER_OUT, 1);
}
以上的紅色區(qū)域?yàn)榛卣{(diào)SSL驗(yàn)證,如果把上面的代碼中的數(shù)字改為0,不驗(yàn)證SSL就能解決此問(wèn)題。當(dāng)然安全性會(huì)下降,也可以在服務(wù)器上安裝更新paypal的SSL證書(shū),也能解決此問(wèn)題。