Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/252.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP获取重定向链接_Php_Url_Redirect - Fatal编程技术网

PHP获取重定向链接

PHP获取重定向链接,php,url,redirect,Php,Url,Redirect,我正在尝试获取最终网站的URL,我正在被重定向。 我去的链接是- 在你进入该链接后,你会被重定向到- 我想得到第二个网址。 我在书中发现了类似的问题 但是使用我从那里得到的代码 $url= 'http://www.primewire.ag/external.php?url=aHR0cDovL3d3dy5wcm9tcHRmaWxlLmNvbS9sL0RBMTU1RjYwRUYtRkMyNzREQ0Q4RA'; $ch = curl_init();

我正在尝试获取最终网站的URL,我正在被重定向。 我去的链接是-

在你进入该链接后,你会被重定向到-

我想得到第二个网址。 我在书中发现了类似的问题

但是使用我从那里得到的代码

        $url= 'http://www.primewire.ag/external.php?url=aHR0cDovL3d3dy5wcm9tcHRmaWxlLmNvbS9sL0RBMTU1RjYwRUYtRkMyNzREQ0Q4RA';
    
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_HEADER, true);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); // Must be set to true so that PHP follows any "Location:" header
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        
        $a = curl_exec($ch); // $a will contain all headers
        
        $url = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL); // This is what you need, it will return you the last effective URL
        
        // Uncomment to see all headers
        /*
        echo "<pre>";
        print_r($a);echo"<br>";
        echo "</pre>";
        */
        
        echo $url; // Voila
$url='1!'http://www.primewire.ag/external.php?url=aHR0cDovL3d3dy5wcm9tcHRmaWxlLmNvbS9sL0RBMTU1RjYwRUYtRkMyNzREQ0Q4RA';
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,$URL);
curl_setopt($ch,CURLOPT_头,true);
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,true);//必须设置为true,以便PHP遵循任何“Location:”标题
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
$a=curl_exec($ch);//$a将包含所有标题
$url=curl\u getinfo($ch,CURLINFO\u EFFECTIVE\u url);//这是您需要的,它将返回您最后一个有效的URL
//取消注释以查看所有标题
/*
回声“;
印刷费($a);回声“
”; 回声“; */ echo$url;//瞧
回显第一个URL而不是重定向的URL。
谢谢

服务器没有重定向(响应是200而不是304)

返回的HTML包含

<frameset rows="24,100%" frameborder="0">
   <frame src="frame_header.php?hello=&title=" scrolling="no" />
       <frame src="http://www.promptfile.com/l/DA155F60EF-FC274DCD8D" />

</frameset><noframes>http://www.promptfile.com/l/DA155F60EF-FC274DCD8D</noframes>
</html>

http://www.promptfile.com/l/DA155F60EF-FC274DCD8D

这将触发HTML浏览器加载该页面。curl不解析返回的HTML,只解析HTTP头,因为它是HTTP客户机,而不是实际的HTML浏览器。因此,第二个URL实际上从未被请求过(您可以通过查看示例代码中实际返回的curl来验证),而有效的URL实际上就是您要返回的URL。

服务器没有重定向(响应是200而不是304)

返回的HTML包含

<frameset rows="24,100%" frameborder="0">
   <frame src="frame_header.php?hello=&title=" scrolling="no" />
       <frame src="http://www.promptfile.com/l/DA155F60EF-FC274DCD8D" />

</frameset><noframes>http://www.promptfile.com/l/DA155F60EF-FC274DCD8D</noframes>
</html>

http://www.promptfile.com/l/DA155F60EF-FC274DCD8D

这将触发HTML浏览器加载该页面。curl不解析返回的HTML,只解析HTTP头,因为它是HTTP客户机,而不是实际的HTML浏览器。因此,第二个URL实际上从未被请求过(您可以通过查看示例代码中实际返回的curl来验证),而有效的URL实际上就是您要返回的URL。

服务器没有重定向(响应是200而不是304)

返回的HTML包含

<frameset rows="24,100%" frameborder="0">
   <frame src="frame_header.php?hello=&title=" scrolling="no" />
       <frame src="http://www.promptfile.com/l/DA155F60EF-FC274DCD8D" />

</frameset><noframes>http://www.promptfile.com/l/DA155F60EF-FC274DCD8D</noframes>
</html>

http://www.promptfile.com/l/DA155F60EF-FC274DCD8D

这将触发HTML浏览器加载该页面。curl不解析返回的HTML,只解析HTTP头,因为它是HTTP客户机,而不是实际的HTML浏览器。因此,第二个URL实际上从未被请求过(您可以通过查看示例代码中实际返回的curl来验证),而有效的URL实际上就是您要返回的URL。

服务器没有重定向(响应是200而不是304)

返回的HTML包含

<frameset rows="24,100%" frameborder="0">
   <frame src="frame_header.php?hello=&title=" scrolling="no" />
       <frame src="http://www.promptfile.com/l/DA155F60EF-FC274DCD8D" />

</frameset><noframes>http://www.promptfile.com/l/DA155F60EF-FC274DCD8D</noframes>
</html>

http://www.promptfile.com/l/DA155F60EF-FC274DCD8D

这将触发HTML浏览器加载该页面。curl不解析返回的HTML,只解析HTTP头,因为它是HTTP客户机,而不是实际的HTML浏览器。因此,第二个URL实际上从未被请求过(您可以通过查看示例代码中实际返回的curl来验证),而有效的URL实际上就是您要返回的URL。

您的代码工作正常,但目标服务器不会将您重定向到任何地方。下面是对第一个curl请求的html响应:


http://www.promptfile.com/l/DA155F60EF-FC274DCD8D

如您所见,这不是重定向,而是加载最终页面的框架。跟踪重定向在这里对您没有帮助

您的代码运行正常,但目标服务器不会将您重定向到任何地方。下面是对第一个curl请求的html响应:


http://www.promptfile.com/l/DA155F60EF-FC274DCD8D

如您所见,这不是重定向,而是加载最终页面的框架。跟踪重定向在这里对您没有帮助

您的代码运行正常,但目标服务器不会将您重定向到任何地方。下面是对第一个curl请求的html响应:


http://www.promptfile.com/l/DA155F60EF-FC274DCD8D

如您所见,这不是重定向,而是加载最终页面的框架。跟踪重定向在这里对您没有帮助

您的代码运行正常,但目标服务器不会将您重定向到任何地方。下面是对第一个curl请求的html响应:


http://www.promptfile.com/l/DA155F60EF-FC274DCD8D

如您所见,这不是重定向,而是加载最终页面的框架。跟踪重定向在这里对您没有帮助

启用详细模式以输出完整的请求和响应集以确保重定向实际发生详细模式以输出完整的请求和响应集以确保重定向实际发生详细模式以输出完整的请求和响应集以确保重定向实际发生可发生的详细模式,以输出完整的请求和响应集,以确保重定向确实发生。然后可以解析该HTML吗?然后可以解析该HTML吗?然后可以解析该HTML吗?然后可以解析该HTML吗?然后可以解析该HTML吗?