关于网站屏蔽IP及区域问题解决方案

user

雨橙

中国.四川.成都

世界之上、唯有远见、惟爱不变。


今天我们项目人员过来找我给我说了一个需求。问我可不可以屏蔽湖南那边的对我们网站的访问。
我思考了一下。回复他是可以的。下面我介绍一下我的解决方案及方法。

方案一:
我们可以通过服务器作IP屏蔽。通过一下防火墙或其他安防软件是可以做到。但湖南区域IP非常多。显然这种实现并不美好。

方案二:
我们可以通过在网站body头部添加程序代码判断实现。


最终我采用了方案二:先贴上代码如下:

<script src="http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js"></script>
<script language="javascript" type="text/javascript">	
	var province=remote_ip_info.province;
	if(province=="\u6e56\u5357"){
	window.alert("Website exception!!!404!!!");window.opener = null;window.close();window.history.go(-1);
	}
</script>


<script src="http://pv.sohu.com/cityjson?ie=utf-8"></script>
<script type="text/javascript">
var cip = returnCitySN["cip"].toString();
var cname = returnCitySN["cname"];
var arry = cip.split(".");
if (cname == "湖南省")
{
	window.location.href="/404.html";
}
</script>


通过上面这个代码完全可以实现屏蔽作用。当湖南网友访问网站会自动跳转404页面或直接关闭。导致无法打开的假象。

最终我们可以将上面代码封转成一个ASP页面或PHP页面。直接在目标网站上引用就可以了。代码如下:

<iframe src="http://pb.com/api/pb.asp" style="display:none;width:1px;height:1px;"></iframe>

最后上VPN做测试,顺利通过。


除了上面的解决方案肯定还有其他的解决方案。目前方案二比较适合我们自己的应用。

注:本文内容均系原创。如需转载分享请标明出处
posted at