菜单

无所不有包容各大浏览器获取HTTP_REFERE凯雷德方法计算

2019年7月27日 - JavaScript

新生查了一部分连锁质地,发掘在IE 中经过 window.location.href 也许是
是不能够获得HTTP_REFERELX570, 真是搞不懂 IE
的浏览器,比比较多浏览器运维的很好的东西,它正是不援救,最终未有章程,只好PHP伪造来源HTTP_REFERE中华V的法子依旧用JS来充数。

IE可以辨认的 HTTP_REFERE智跑 提交是透过click 触发的平地风波依然是 Form
表单提交的乞请,上边是依照网上的资料总计的二个办法:

<script>
function referURL(url){
var isIe=(document.all)?true:false;
if(isIe) {
var linka = document.createElement(‘a');
linka.href=url;
document.body.appendChild(linka);
linka.click();
}
else window.location = url;
}

var url=”//www.jb51.net”;
referURL(url);
</script>

其一法子先是用 document.all 来判定当前的浏览器是不是是IE,
假使是的话就生成二个link,然后自行实施 onclick 事件,假诺不是的话就用JS
跳转。这样在拍卖页面就足以获取 HTTP_REFERER 了

此方法在IE, Firefox, Safari , Chrome 测验通过

  1. PHP利用curl伪造IP和来路HTTP Referrer

referer.php

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://mydomain.com/ip.php");
curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-FORWARDED-FOR:8.8.8.8', 'CLIENT-IP:8.8.8.8')); //构造IP
curl_setopt($ch, CURLOPT_REFERER, "//www.jb51.net/ ");  //构造来路
curl_setopt($ch, CURLOPT_HEADER, 1);
$out = curl_exec($ch);
curl_close($ch);

echo $out;

ip.php

<?php
function getClientIp() {
if (!empty($_SERVER["HTTP_CLIENT_IP"]))
$ip = $_SERVER["HTTP_CLIENT_IP"];
else if (!empty($_SERVER["HTTP_X_FORWARDED_FOR"]))
$ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
else if (!empty($_SERVER["REMOTE_ADDR"]))
$ip = $_SERVER["REMOTE_ADDR"];
else
$ip = "err";
return $ip;
}
echo "IP: " . getClientIp() . "<br>";
echo "referer: " . $_SERVER["HTTP_REFERER"];

你可能感兴趣的小说:

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图