php模拟用户IP抓取 cdn地址内容
谁知道怎么解决抓取cdn问题吗用php抓取cdn地址它总是根据我服务器的IP返回最近的视频地址我想根据用户IP地址获取用户最近的视频地址应该怎么写对方网页是XML的但是他...
谁知道怎么解决抓取cdn问题吗
用php抓取 cdn地址 它总是根据我服务器的IP返回最近的视频地址 我想根据用户IP地址获取用户最近的视频地址 应该怎么写
对方网页是XML的 但是他会获取用户IP 我用PHP抓取 他总是根据我服务器的IP返回 信息,而我想模拟用户IP 让对方网站根据我用户的IP 显示我用户所显示的内容 展开
用php抓取 cdn地址 它总是根据我服务器的IP返回最近的视频地址 我想根据用户IP地址获取用户最近的视频地址 应该怎么写
对方网页是XML的 但是他会获取用户IP 我用PHP抓取 他总是根据我服务器的IP返回 信息,而我想模拟用户IP 让对方网站根据我用户的IP 显示我用户所显示的内容 展开
1个回答
展开全部
function get_client_ip ()
{
static $realip = NULL;
if ($realip !== NULL)
{
return $realip;
}
if (isset($_SERVER))
{
if (isset($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$arr = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']);
/* 取X-Forwarded-For中第?个非unknown的有效IP字符? */
foreach ($arr as $ip)
{
$ip = trim($ip);
if ($ip != 'unknown')
{
$realip = $ip;
break;
}
}
}
elseif (isset($_SERVER['HTTP_CLIENT_IP']))
{
$realip = $_SERVER['HTTP_CLIENT_IP'];
}
else
{
if (isset($_SERVER['REMOTE_ADDR']))
{
$realip = $_SERVER['REMOTE_ADDR'];
}
else
{
$realip = '0.0.0.0';
}
}
}
else
{
if (getenv('HTTP_X_FORWARDED_FOR'))
{
$realip = getenv('HTTP_X_FORWARDED_FOR');
}
elseif (getenv('HTTP_CLIENT_IP'))
{
$realip = getenv('HTTP_CLIENT_IP');
}
else
{
$realip = getenv('REMOTE_ADDR');
}
}
preg_match("/[\d\.]{7,15}/", $realip, $onlineip);
$realip = ! empty($onlineip[0]) ? $onlineip[0] : '0.0.0.0';
return $realip;
}
试试这个函数吧,我用这个函数获取IP,可以直接跳过CDN获取到客户机的IP
{
static $realip = NULL;
if ($realip !== NULL)
{
return $realip;
}
if (isset($_SERVER))
{
if (isset($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$arr = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']);
/* 取X-Forwarded-For中第?个非unknown的有效IP字符? */
foreach ($arr as $ip)
{
$ip = trim($ip);
if ($ip != 'unknown')
{
$realip = $ip;
break;
}
}
}
elseif (isset($_SERVER['HTTP_CLIENT_IP']))
{
$realip = $_SERVER['HTTP_CLIENT_IP'];
}
else
{
if (isset($_SERVER['REMOTE_ADDR']))
{
$realip = $_SERVER['REMOTE_ADDR'];
}
else
{
$realip = '0.0.0.0';
}
}
}
else
{
if (getenv('HTTP_X_FORWARDED_FOR'))
{
$realip = getenv('HTTP_X_FORWARDED_FOR');
}
elseif (getenv('HTTP_CLIENT_IP'))
{
$realip = getenv('HTTP_CLIENT_IP');
}
else
{
$realip = getenv('REMOTE_ADDR');
}
}
preg_match("/[\d\.]{7,15}/", $realip, $onlineip);
$realip = ! empty($onlineip[0]) ? $onlineip[0] : '0.0.0.0';
return $realip;
}
试试这个函数吧,我用这个函数获取IP,可以直接跳过CDN获取到客户机的IP
追问
你这是获取用户IP 我想要的是模拟用户IP抓取CDN地址
获取IP地址我也会写的。多谢你的回答,往继续交流
追答
还是不太明白你的需求,你想要实现什么功能呢?想 要知道CDN的地址?
$_SERVER['HTTP_X_FORWARDED_FOR']看看这个里面获取到的地址吧,里面应该有你要的数据
深圳联雅网络科技有限公司
2023-08-27 广告
2023-08-27 广告
作为深圳联雅网络科技有限公司的工作人员,我认为网站搭建需要经过以下步骤:1. 确定网站的目的和主题,以及目标受众群体。2. 选择适合的网站平台和域名,并购买和注册域名。3. 设计网站的页面布局和风格,并编写HTML和CSS代码。4. 添加网...
点击进入详情页
本回答由深圳联雅网络科技有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |