我正在尝试使用 get_meta_tags 函数来获取网址的元信息。它没有给我来自同一来源或域的网址元信息。
就像我从控制器http://example.com/fetch
那样做$tags=get_meta_tags("http://example.com/blog/my-awesome-blog-post");
print_r($tags);
尝试在我的网站http://example.com/blog/my-awesome-blog-post上获取网页的元信息。 共享两个屏幕截图:
本地实例:
获取无法打开流的错误:已达到重定向限制,正在中止。这是我得到的错误。
我尝试了不同的网址(Facebook除外)。我获得了成功的结果。
无论如何我可以实现这个功能。
答案 0 :(得分:2)
我不知道您的localhost
,但这是我从您的方案中推断出来的。
每次PHP尝试访问网址时,您的网站(或您正在访问的网页)都会重定向到新的网址。当达到最大重定向限制,即20时,PHP停止跟随并给出错误。
这种情况正在发生,因为PHP请求是一个简单的http
请求,它不处理任何会话/ cookie值。因此,您的网站始终将其视为新请求并保持重定向。
要验证,请注意,当您在隐身窗口中打开网址(https://dev.kidengage.com/library
)时,会将您重定向到https://dev.kidengage.com/hyderabad
以设置用户的位置。并且,在设置cookie之后,不再对给定的URL进行重定向。
这是重定向发生的地方。
因此,您需要先修复此问题,或者编写自定义CURL脚本来获取可以处理会话和重定向的数据。
希望它会有所帮助。