【问题标题】:Find destination URL using cURL使用 cURL 查找目标 URL
【发布时间】:2013-05-14 10:07:36
【问题描述】:

我正在尝试使用 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             |
-------------------------------------------------------

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

【问题讨论】:

  • 可能网站存储了一些个人IP或其他信息并重定向您

标签: php redirect curl


【解决方案1】:

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

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

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

【讨论】:

    猜你喜欢
    • 2012-01-21
    • 2010-11-29
    • 1970-01-01
    • 1970-01-01
    • 2022-07-26
    • 1970-01-01
    • 2012-03-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多