PHP重定向URL

PHP重定向URL

问题描述:

function get_redirect_final_target($url) 
{ 
    $ch = curl_init($url); 
    curl_setopt($ch, CURLOPT_NOBODY, 1); 
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // follow redirects 
    curl_setopt($ch, CURLOPT_AUTOREFERER, 1); // set referer on redirect 
    curl_exec($ch); 
    $target = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL); 
    curl_close($ch); 
    if ($target) 
     return $target; 
    return false; 
} 

我原来的链接PHP重定向URL

$url = "http://www.mylink"; 

呼应重定向连接,但它会呼应了相同的链接,因为它无法检测到任何重定向头。但我的链接将有一个302重定向。

echo get_redirect_final_target($url); 

使用其它正常重定向链接的工作,但我的链接进行重定向,但不能获得头位置链接。 任何帮助极大appreaciated!

+0

是'get_redirect_target'正确的应该不会是'get_redirect_final_target'? –

+0

使用'curl_error()',你会得到一个SSL错误 –

+0

我只是想念一个字,但它有同样的问题。你可以检查我的原始网址,它会重定向到一个视频。但脚本无法检测重定向。 – Wendy

只需使用get_headers PHP函数,看看你得到200或302

+0

在Firefox插件HTTP活标题测试的URL,原始网址将有 HTTP/2.0 302找到了# 和重定向的网址将有 HTTP/2.0 200 OK' – Wendy

+1

这是正常的..你得到302每个重定向,然后在最终的真实网页上,你会得到200。 – Yedidia