使用cURL查找目标网址

时间:2013-05-14 10:07:36

标签: php redirect curl

我正在尝试使用cURL获取目标网址。

<?php
$ch = curl_init('http://www.cnn.com');
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31");
curl_setopt($ch, CURLOPT_REFERER, "http://www.mydomain.com/");
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$content = curl_exec($ch);
echo $lastUrl = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
curl_close($ch);
?>

上面的代码生成以下输出,并且它在我的本地服务器中正常工作。

输出:本地服务器中的“http://edition.cnn.com”和实际服务器中的“http://www.cnn.com”。

------------------------------------------------------
                    Server Detail
------------------------------------------------------
Local                    |            Actual
                         |
PHP Version 5.3.13       |      PHP Version 5.3.20
cURL Info 7.24.0         |      cURL Info 7.15.5

Protocols:      
dict, file, ftp,         |      telnet, dict,
ftps, gopher,            |      ldap, http,
http, https,             |      file, https, ftps
imap, imaps, ldap,       |      tftp,ftp,
pop3, pop3s,             |
rtsp, scp,               |
sftp, smtp,              |
smtps,                   |
telnet, tftp             |
-------------------------------------------------------

为什么实际服务器出现问题?

1 个答案:

答案 0 :(得分:0)

  

为什么实际服务器出现问题?

我的猜测是CNN正在使用标题或IP来显示不同的内容。

尝试使用Firefox插件HTTP实时标头查看浏览器的功能,然后将其复制到CURL中。