cURL通过用户IP获取内容

时间:2018-12-03 14:38:55

标签: php ubuntu curl

我尝试使用cURL作为URL在服务器上通过php获取内容:http://www.t100v.com/apk/V2.php

但正在响应的数据是发出请求的ip生成的“ key”值。

我尝试发送带有请求的用户IP地址,但是没有用 如何通过cURL请求发送用户的IP地址?许多网站阻止了服务器IP地址以通过cURL访问。

这是我尝试过的:

$externalIpAdress ='1.1.1.1 example' ;
$ID = '1858';
$url = 'https://www.t100v.com/apk/V2.php';
$ch = curl_init();
curl_setopt($ch,CURLOPT_USERAGENT,'android_app');
curl_setopt($ch, CURLOPT_HTTPHEADER, array("X-Forwarded-For: $externalIpAdress"));
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
$result = curl_exec($ch);
curl_close($ch);
$json_a = json_decode($result, true);
$play_url= $json_a['app_version']['play_url'].'?';
$key= $json_a['app_version']['key'].'S54@daE#';
$key2= $json_a['app_version']['key'];
$exp= $json_a['app_version']['exp'];
$token = md5($key.$exp.$ID);

$final= $play_url.'key='.$key2.'&exp='.$exp.'&token='.$token.'&id='.$ID;
echo  $final;

2 个答案:

答案 0 :(得分:3)

如果希望请求来自用户的IP地址,则需要在用户的计算机上运行代码

您不能欺骗他们的IP地址并获得将发送给该​​IP的响应,而根本不会到达您的计算机。

答案 1 :(得分:1)

简单,让用户在自己的计算机上安装PHP-cli(MacOS附带了Apple的php,Windows用户可以在此处下载预编译的php-cli:https://windows.php.net/download/,所有主要的linux发行版中都包含php存储库),然后让用户在自己的计算机上运行脚本。

  • 要么,要么也使用php脚本获取最终数据,然后从您的网站中流式传输。