簡體   English   中英

CURL:SSL證書失敗,請驗證CA證書是否正常

[英]CURL: SSL certificate fails, verify that the CA cert is OK

我在Windows計算機上運行本地XAMPP服務器。

從這台服務器,我試圖通過CURL連接到SSL加密頁面。

我確實遇到了以下錯誤:

SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed

我意識到我可以通過使用...簡單地禁用SSL驗證。

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

..但我真的不想這樣做,這就是使用SSL的重點。

我在這里看到了幾個答案,這些答案指向將CURL選項“ CURLOPT_CAINFO”設置為可在此處獲取的.pem文件: http : //curl.haxx.se/ca/cacert.pem

curl_setopt($ch, CURLOPT_CAINFO, 'C:\xampp\cacert.pem' );

我確實將文件放在給定的文件夾中,並在運行curl_exec之前運行上述命令。 但是我仍然得到和以前一樣的錯誤。

我還嘗試從嘗試連接的站點下載證書,但是錯誤消息仍然相同。

PHP可以訪問.pem文件,例如使用file_get_contents,因此它似乎不是文件訪問/權限問題。

該問題持續存在的原因可能是什么?

我在跑步:

  • PHP版本:5.2.9
  • cURL信息:libcurl / 7.16.0 OpenSSL / 0.9.8i zlib / 1.2.3

遲到的響應,但我遇到了同樣的問題,而解決問題的方法是升級到php 5.3。 我沒有看到任何明確的內容說“ 5.2無法正確進行證書驗證”,但是使用CURLOPT_CAINFO可以使您一切正常。 升級到5.3,它將起作用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM