Web开发-web开发中如何准确的判断用户的来源网址?

需求定制 需求定制 主题:1050 回复:2283

Web开发-web开发中如何准确的判断用户的来源网址?

清晨说ぺ晚安 发布于 2017-03-29 字数 51 浏览 954 回复 3

比如看到从哪个网站来的,如何杜绝伪造的请求?

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

评论(3

浮生未歇 2017-09-09 3 楼

PHP中的全局数据,window.location.href apache 中的rewrite

晚风撩人 2017-06-08 2 楼

一般会做一个中间的连接,比如新浪微博,里面多有的连接都是在本域名下,做一个二次跳转,来统计去往何处。
如果是统计从哪个网站跳过来的,那只能:
统计是不是从搜索引擎过来:
HttpContext.Current.Request.UrlReferrer.ToString();

泛泛之交 2017-04-15 1 楼

一般正常的浏览器都会发送Referer的请求头,包含它上一次的来源
如果是PHP的话可以使用这个服务器超级变量获取

$_SERVER['HTTP_REFERER']

HTTP_REFERER这个是作用是返回上一个页面地址,但有时会取不到,这东西其实就是HTTP header的一个信息而已可以方便的伪造

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://localhost/test.php');
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_REFERER, 'http://www.baidu.com');
$data = curl_exec($ch);
curl_close($ch);
echo $data;

没有好的办法从这个上面进行追踪,要么就猥琐的给用户存放JS来获取用户的真实的操作系统,或者发现用户根本不是浏览器的时候就强制返回用户错误页。