当前位置:编程学习 > JAVA >>

Java Web 项目 过滤 非指定域名的外部链接(网站)

各位大大们,请问大家一个问题,怎么过滤掉非站内的链接,
比如,以CSDN网站链接为例(过滤掉非csdn域名的链接):
场景1:http://www.iteye.com/?a=http://www.csdn.net/
如果用户输入这个,肯定是不行的,要提示用户存在非指定域名的链接;
场景2:http://www.csdn.net/?a=http://www.iteye.com/ 这个链接,是可以的;
场景3:http://csdn.net/?a=http://www.iteye.com/ 这个链接,是可以的;
场景4:www.csdn.net/?a=http://www.iteye.com/ 这个链接,是可以的;
其中,场景2、场景3、场景3之间的区别在于是否输入www的问题,这个就是说,http、www 这个是可选的,是否输入,都可以;
场景4:http://bbs.csdn.net/?a=http://www.iteye.com/存在二级域名,也是可以的。
综上所述:指定的域名是 csdn.net ,可以存在二级域名,而且http和www可输入可不输入,而且这个域名是打头的,就是不能像场景1那样(因为场景1这样的网站,是会访问iteye,而不是访问csdn),对于场景1中的,问号?,其中#$ 等都是不可以的
各位,不知道有什么办法,可以实现这个功能么? java和js的 --------------------编程问答-------------------- 不怕麻烦的话,就把几种http请求的协议手动配置起来以及域名后缀什么的,然后再根据uri进行截取加判断,呵呵 最愚蠢的办法,不知道还有没有更好的……等高人出现 --------------------编程问答-------------------- 没人回帖,自己顶一个先。


求帮助。。。。。 --------------------编程问答-------------------- 你写的每个字我都认识,就是没看明白你再说啥? --------------------编程问答--------------------
引用 3 楼 bigc2001 的回复:
你写的每个字我都认识,就是没看明白你再说啥?


就是要过滤掉非本网站内 的外部链接,但是要考虑到存在二级域名和是否输入 http www 的情况。 --------------------编程问答-------------------- 写个Filter用正则匹配一下不可以吗?? --------------------编程问答--------------------
引用 5 楼 huiwenjie168 的回复:
写个Filter用正则匹配一下不可以吗??

可是可以,但是,我正则不太会。。。。
我昨天试着写了下,没写太对。。。。 --------------------编程问答-------------------- 求一个正则,规则可以兼容如下的:
  http://csdn.net
  www.csdn.net
 http://www.csdn.net
 意思是可以是http://  or http://www.  or www. 打头的,然后跟域名
补充:Java ,  Java EE
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,