使用file_get_contents 檢索文件後檢索實際URL
當使用file_get_contents() 檢索網站內容時,提供的URL 可能會重定向到不同的位置。雖然此功能很方便,但它也需要確定重定向後到達的實際 URL。
實現此目的的一種方法是配置 file_get_contents() 以忽略重定向。方法如下:
$context = stream_context_create(
array(
'http' => array(
'follow_location' => false
)
)
);
$html = file_get_contents('http://www.example.com/', false, $context);
透過在流上下文中將'follow_location' 設為false,file_get_contents() 將檢索內容而無需自動跟隨重定向。
發出請求後,可以檢查HTTP 回應期間傳回的標頭以獲得最終結果URL:
var_dump($http_response_header);
這將顯示一個包含HTTP 標頭的數組,其中包括指示任何重定向後到達的實際URL 的「位置」標頭。
此方法的靈感來自於 Stack Overflow 上線程“How do Iignore a moving-header with file_get_contents in PHP?”
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3