如何确定网页是否重定向到某个URL

时间:2016-08-27 12:49:57

标签: php file-get-contents url-redirection

我如何检查file_get_contents('http://example.com');是否将我重定向到http://google.com

以下是代码的结构:

$file = file_get_contents('http://example.com');

if(file_redirects_to_http://google.com) {
   echo 'website redirected';
}

1 个答案:

答案 0 :(得分:0)

这适合我。

<?php

$curl_output = shell_exec('curl -I --silent "https://yt-dl.org/downloads/latest/youtube-dl"');

$preg_result = preg_match('/Location:/', $curl_output);

if ($preg_result == 1) {
    echo "Request triggered a redirect\n";
}

// output:
// Request triggered a redirect

解释

我知道网址https://yt-dl.org/downloads/latest/youtube-dl会触发重定向,所以我只发送一个curl请求(命令行curl),-I表示只显示响应的标题。
然后,如果字符串Location在响应中,则假设它是重定向。