PHP跟踪重定向

zuk*_*uk1 3 php

我有一个超过10,000个URL的数据库,但是每个URL都会重定向到另一个URL.如何请求URL并在(可能)多个重定向的路径中找到它的最终目的地?

Gre*_*reg 9

您可以使用cURL函数执行此操作:

$c = curl_init('http://original.url');
curl_setopt($c, CURLOPT_FOLLOWLOCATION, true);
curl_exec($c);

// Error checking here - see curl_error()

$newUrl = curl_getinfo($c, CURLINFO_EFFECTIVE_URL);

curl_close($c);
Run Code Online (Sandbox Code Playgroud)

  • 你可能也想做`curl_setopt(CURLOPT_MAXREDIRS,$ n);`其中$ n是一个合理的数字,可以防止跟踪给定网址的无法重复的重定向次数. (3认同)
  • curl_setopt中缺少$ c(CURLOPT_FOLLOWLOCATION,true); 它应该是,curl_setopt($ c,CURLOPT_FOLLOWLOCATION,true); (3认同)