提供的 cURL 函數是取得網頁的優良工具。然而,在處理 HTTPS URL 時,它遇到了挑戰。為了解決這個問題,我們需要將 SSL 憑證驗證合併到 cURL 使用的選項陣列中。
預設情況下,cURL 會驗證遠端伺服器的 SSL 憑證以確保安全連線。然而,我們的程式碼目前缺乏這種驗證,使其容易受到中間人攻擊。若要停用SSL 憑證驗證並啟用HTTPS 支持,請將以下行新增至選項陣列:
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
或者,您可以將其直接整合到get_web_page() 函數中:
function get_web_page($url) { $options = array( CURLOPT_RETURNTRANSFER => true, CURLOPT_HEADER => false, CURLOPT_FOLLOWLOCATION => true, CURLOPT_ENCODING => "", CURLOPT_USERAGENT => "spider", CURLOPT_AUTOREFERER => true, CURLOPT_CONNECTTIMEOUT => 120, CURLOPT_TIMEOUT => 120, CURLOPT_MAXREDIRS => 10, CURLOPT_SSL_VERIFYPEER => false // Disable SSL Cert checks ); // ... code continues as before ... }
此新增停用SSL 憑證驗證,允許cURL 從HTTPS URL 檢索資料。但是,需要注意的是,這會破壞安全性,因此通常不建議在生產中使用。為了獲得更強大的 HTTPS 支持,請考慮實作適當的 SSL 驗證機制。
以上是如何使用 PHP cURL 處理 HTTPS URL 並安全地管理 SSL 憑證驗證?的詳細內容。更多資訊請關注PHP中文網其他相關文章!