(轉)php 使用cURL發起https(ssl)請求時注意事項

使用curl發起https請求的時候報錯:「SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed」

很明顯,驗證證書的時候出現了問題。 html

使用curl若是想發起的https請求正常的話有2種作法: curl

方法1、設定爲不驗證證書和host。 函數

在執行curl_exec()以前。設置option url

$ch = curl_init(); spa

...... htm

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); blog

方法2、設定一個正確的證書。 ssl

本地ssl判別證書太舊,致使連接報錯ssl證書不正確。 get

咱們須要下載新的ssl 本地判別文件 it

http://curl.haxx.se/ca/cacert.pem

放到 程序文件目錄

curl 增長下面的配置

   curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,true); ;
   curl_setopt($ch,CURLOPT_CAINFO,dirname(__FILE__).'/cacert.pem');

大功告成

PHP中CURL方法curl_setopt()函數的一些參數 http://blog.sina.com.cn/s/blog_40e4b5660100sxa3.html

以上信息供參考
相關文章
相關標籤/搜索