防止网站外部请求本站资源,这样做对不对?

快速开发师 发布于 2016/06/27 19:15
阅读 499
收藏 1
为了防止别人直接通过自己网站的路径访问js文件,例如我的网假如站是www.app123.com;然后他们为了节省流量,就在他们的网页中引用我网站的js, 
<script type="text/javascri" src="http://www.app123.com/jquery.min.js"></script>

对于这种引入本站js以盗取流量的方式,我做了登陆处理,如果没有登陆就,访问本站的资源就失败。

拦截器对所有 *.* 除了登陆部分页面和资源的请求进行拦截,发现资源请求时,没有登陆后的session个人用户信息,就认为是外部资源访问。就做相应废弃本次请求处理。

不知道这样能否拦截外部网站对本站的资源引用!不知道各位网站玩家是否这样处理的?


加载中
0
烽火云烟
烽火云烟
百度nginx防盗链,或者你使用的服务器软件防盗链就好
0
乌龟壳
乌龟壳
那你的登陆页面怎么做?
快速开发师
快速开发师
回复 @快速开发师 : 得有验证码,方式自己写控件赋值登录。
快速开发师
快速开发师
登录只是为了存储用户名等信息到session域,实际是想从拦截器里判断session中是否有登录信息,如果没有阻断访问。
0
辉火
辉火
http头会有请求来源,直接从来源网址提取域名检测即可。
0
bnysky
bnysky

引用来自“辉火”的评论

http头会有请求来源,直接从来源网址提取域名检测即可。
分析Referer并对有可能恶意访问进行限制是可行的,但也可能会屏蔽一部分搜索访问。
0
zabcd117
zabcd117

1.referer

2.js文件里面判断top.location,不是你的站点,直接top跳转

zabcd117
zabcd117
回复 @快速开发师 : 如果是在网页引用的话,用第一个就可以了,判断一下referer,不是你的网站,直接404。
快速开发师
快速开发师
呵呵,他能判断,说明他已经加载了我的js了,js执行是在加载成功之后,我要在他加载之前就阻止它加载!
0
s
segfal
if(window.location.host.indexOf(".app123.com") == -1){
	window.location.href = "http://www.app123.com/";
}

加上这段,就不怕了。 这个站貌似就是这样处理的 www.jser.com

0
肖申克救赎
肖申克救赎
如果是别的网站引用弹出一个广告才高级
0
_kolnick
_kolnick
判断是否为你的网站
0
facesea
facesea
这跟CSRF(Cross-site request forgery跨站请求伪造)有点像,可以采用添加token的形式
快速开发师
快速开发师
听说防盗链可以
返回顶部
顶部