如何使用 file_get_contents() 检索重定向后的实际 URL?

Mary-Kate Olsen
发布: 2024-10-31 10:43:02
原创
848 人浏览过

How to Retrieve the Actual URL after Redirection with file_get_contents()?

使用 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中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!