<?php
$url='XXX'//这里填写url
$cookie='XXXXXXXXX' //COOKIE值
$post_data='' //post数据
$useragent='Mozilla/4.0 (compatibleMSIE 6.0Windows NT 5.1SV1.NET CLR 2.0.50727MAXTHON 2.0)'
$ch = curl_init()
curl_setopt($ch, CURLOPT_HTTPGET, 1)
curl_setopt($ch, CURLOPT_HEADER, 0)
curl_setopt($ch, CURLOPT_REFERER, "")//引号内填写你需要写的referer值
curl_setopt($ch, CURLOPT_URL,$url)
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data)
curl_setopt($ch, CURLOPT_COOKIE,$cookie)
curl_setopt($ch, CURLOPT_USERAGENT,$useragent)
$result = curl_exec($ch)
?>
<meta name="referrer" content=“no-referrer”>
referrer是用于追踪用户是从哪个页面跳转过来,js中使用document.referrer来得到值,一般用户做移动端back按钮,如用户通过别人发送时候链接进入页面时,可以隐藏back按钮。
referrer有五种属性
No Referrer (永远不做记录)
No Referrer When Downgrade(浏览器默认,当降级时候不记录,从https跳转到http)
Origin Only(只记录 协议+ host)
Origin When Cross-origin(仅在发生跨域访问时记录 协议+host)
Unsafe URL(永远记录)
参考链接: Referrer Policy 介绍 和 document.referrer的用法详解
以前对Http中Referer的认识不够透彻。最近理了理,记录一下。1 Referer可以记录访问的来源,统计访问量,可以用来防盗链。
2 客户端用js不能篡改Referer,用一些插件什么的可以达到伪造的目的。
3 可以使用Fiddler修改Referer。
选择 fiddler窗口的rules->customize rules…在打开的CustomRules.js记事本窗口中,找到如下位置 static function OnBeforeRequest(oSession: Session) { // Sample Rule: Color ASPX requests in RED // if (oSession.uriContains(“.aspx”)) { oSession["ui-color"] = “red”}
在这一句的后面加上 if(oSession.oRequest.headers.ExistsAndContains(“Referer”,”220.170.79.105″)) {oSession.oRequest.headers.Remove(“Referer”) }
4 服务器端修改Referer,通过webClient,直接设置访问可以达到修改目的。
5 其它的一些修改Referer的方式方法。参考:http://www.cnblogs.com/mx3000/archive/2007/12/17/1003239.html
6 利用Referer防止图片盗链
虽然Referer并不可靠,但用来防止图片盗链还是足够的,毕竟不是每个人都会修改客户端的配置。(一般只允许站内访问)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)