我有一个非常具体的用例。 我正在使用重定向到产品页面的搜索 URL 加载网页。
我的以下代码适用于典型的重定向,即 hotmail.com 到 https://outlook.live.com/owa/
但是,当我使用这个网站时https://www.diy.com/search?term=5023539020009重定向到https://www.diy.com/departments/focal-point-cardivik-black -electric-stove/1759521_BQ.prd,代码只带回原网址
我已经通过 stackoverflow 进行了大量搜索并调整了 cURL 选项,但似乎找不到问题。
一些帮助将不胜感激。
$url = 'https://www.diy.com/search?term=5023539020009';
$cookie = tmpfile();
$userAgent = 'Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31';
$ch = curl_init();
$options = array(
CURLOPT_CONNECTTIMEOUT => 20 ,
CURLOPT_USERAGENT => $userAgent,
CURLOPT_AUTOREFERER => true,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_COOKIEFILE => $cookie,
CURLOPT_COOKIEJAR => $cookie ,
CURLOPT_SSL_VERIFYPEER => 0 ,
CURLOPT_SSL_VERIFYHOST => 0,
CURLOPT_HEADER => true,
CURLINFO_HEADER_OUT => true,
CURLOPT_NOBODY => true,
CURLOPT_CUSTOMREQUEST => 'GET'
);
curl_setopt_array($ch, $options);
curl_setopt($ch, CURLOPT_URL, $url);
$response = curl_exec($ch);
$new_url = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
curl_close($ch);
print $new_url;