【问题标题】:Get result of redirection as the client (curl)作为客户端获取重定向结果(curl)
【发布时间】:2023-03-21 10:55:01
【问题描述】:

我正在尝试获取重定向背后的“真实”url,我使用 curl 获取 url 没有问题,我的问题是 curl 返回的链接仅对服务器的 IP 地址有效。

现在我正在寻找一些东西来“作为客户端”获取真正的 url,没有 java 或 flash,老实说我不知道​​该怎么做。

我当前的代码:

function get_url( $url ) {
$res = array();
$options = array( 
    CURLOPT_RETURNTRANSFER  => true,
    CURLOPT_HEADER          => false,
    CURLOPT_FOLLOWLOCATION  => true,
    CURLOPT_USERAGENT       => $_SERVER['HTTP_USER_AGENT'],
    CURLOPT_AUTOREFERER     => true,
    CURLOPT_CONNECTTIMEOUT  => 120,
    CURLOPT_TIMEOUT         => 120,
    CURLOPT_MAXREDIRS       => 10,
); 
$ch      = curl_init( $url ); 
curl_setopt_array( $ch, $options ); 
$content = curl_exec( $ch ); 
$err     = curl_errno( $ch ); 
$errmsg  = curl_error( $ch ); 
$header  = curl_getinfo( $ch ); 
curl_close( $ch ); 
$res['content'] = $content;     
return $res;

}

【问题讨论】:

  • 如果他们遇到麻烦,只能通过 IP 地址向最初请求的客户端提供数据,那么我想他们不想要你做你正在做的事情想做……?

标签: php url redirect curl


【解决方案1】:

这是不可能通过 CURL 实现的。服务器可能会根据您的 IP 地址生成链接。您不能通过 curl 使用客户端的 IP 地址覆盖您的 IP 地址。因此,请尝试使用您在问题中提到的其他方法。

【讨论】:

  • 我知道通过 curl 是不可能的,我要求除了 java/flash 之外的其他解决方案,因为这必须在移动设备上工作
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-15
相关资源
最近更新 更多