我注意到一些facebook页面重定向。例如,NOFX乐队页面(http://www.facebook.com/pages/NOFX/104336479603261仅允许两个链接,以便其中一个未设置为链接)重定向到其官方页面(https://www.facebook.com/pages/NOFX-Official-Page/180985116576?rf=104336479603261)。我很好奇,如果在api我们可以告诉一个页面这样做。 https://graph.facebook.com/104336479603261似乎没有显示有关重定向的任何信息,但也许还有另一种方法可以找到它。
编辑: 不使用api的解决方案很好。
EDIT2: 如果有人感兴趣,这里解决的是我使用的代码:
代码主要是从How can I determine if a URL redirects in PHP?复制的。
function getURL($URL)
{
$ch = curl_init($URL);
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,true);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3');
curl_exec($ch);
$code = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
curl_close($ch);
return $code;
}
唯一值得注意的是我必须添加用户代理,因此我不会被发送到不受支持的浏览器页面。
答案 0 :(得分:0)
编辑:不使用api的解决方案很好。
然后,只需对页面网址发出HTTP HEAD请求,看看您是否收到301 Moved Permanently
状态代码,其中包含Location
标头。 (实际上只检查状态代码应该足够了,如果你只想找到,如果页面被重定向;如果你也想知道哪里它被重定向到,然后检查位置标题。)