使用 file_get_contents 检索文件后检索实际 URL
使用 file_get_contents() 检索网站内容时,提供的 URL 可能会重定向到不同的位置。虽然此功能很方便,但它也需要确定重定向后到达的实际 URL。
实现此目的的一种方法是配置 file_get_contents() 以忽略重定向。操作方法如下:
<code class="php">$context = stream_context_create( array( 'http' => array( 'follow_location' => false ) ) ); $html = file_get_contents('http://www.example.com/', false, $context);</code>
通过在流上下文中将 'follow_location' 设置为 false,file_get_contents() 将检索内容而不自动遵循重定向。
发出请求后,返回标头在 HTTP 响应期间可以检查以获得最终 URL:
<code class="php">var_dump($http_response_header);</code>
这将显示一个包含 HTTP 标头的数组,其中包括指示任何重定向后到达的实际 URL 的“位置”标头。
此方法的灵感来自 Stack Overflow 上线程“How do Iignore a moving-header with file_get_contents in PHP?”中提供的解决方案
以上是如何使用 file_get_contents() 检索重定向后的实际 URL?的详细内容。更多信息请关注PHP中文网其他相关文章!