• 懒鸟飞:帝国cms模板专业分享平台,新域名:lanniaofei.com

怎样禁止网站被反向代理(即禁止镜像网站)

网站被镜像了,其实就是有人把域名解析到你的网站上,做了反向代理,生成了一个镜像网站,当别人访问镜像网站域名时,镜像网站就会访问原网站数据,之后数据返回给访客。
访客的感觉就想是在访问原网站的数据一样。镜像网站的存在会导致原网站降权。所以如果发现网站被镜像了,应该及时禁止镜像。
 
本文主要讲解一下怎样禁止镜像网站。有几种禁止的方法,详情如下:
 
方法一:封镜像网站IP
1、镜像网站需要访问原网站数据,所以我们禁止镜像网站ip,镜像网站就不能访问原网站了。
2、获取镜像网站的ip
注意,直接ping镜像网站域名得到的ip是镜像网站的前台ip。而获取数据的后台ip可能和前台ip不是同一个。所以获取镜像网站后台ip的方法如下:
(1)创建一个php文件,命名为ip.php ,在其添加如下代码:
<?php
$file = "ip.txt";//保存的文件名
$ip = $_SERVER['REMOTE_ADDR'];
$handle =fopen($file,'a');
fwrite($handle,"IP Address:");
fwrite($handle,"$ip");
fwrite($handle,"n");
fclose($handele);
?>
 
之后保存,把ip.php上传到原网站根目录。
(2)之后访问:http://镜像网站域名/ip.php ,这样在原网站根目录下会生成一个ip.txt文本文件,其内容就包含了镜像网站后台ip地址。 
(3)封镜像网站ip在上一步获取到镜像网站后台ip后,就可以在原网站的空间管理中禁止此ip访问。也可以在原网站后台禁止此ip访问(很多网站系统,例如帝国cms,都有禁止ip访问的功能)。
如果你不会禁止ip,也可以联系空间商,让其帮忙禁止ip。
 
注意事项:方法一比较简单,针对ip,但有时候镜像网站ip不固定,你刚禁止了ip,镜像网站的ip自动又改变了。这时候,我们就不能针对ip,只能针对域名了。下面的方法就是针对域名进行禁止。
 
方法二:JS代码跳转
这种方法是在原网站添加js代码判断域名,如果域名是原网站就正常显示,如果不是原网站域名,就跳转到原网站。
在网页的<head></head>部分添加下面代码:
<script type="text/javascript">
if (document.location.host != "www.lanniaofei.com") {
location.href = location.href.replace(document.location.host,'www.lanniaofei.com');
}
</script>
 
其中的域名可以改成原网站,当判断域名不是原网站域名时,会自动跳转到原网站。
 
方法三:JS代码判断域名,显示提示文字
方法二是用js判断域名,如果不是原网站,就跳转回原网站,我们也可以用js判断域名,如果不是原网站域名,而是镜像网站域名,则在镜像网站显示提示文字。
 
在网页<body></body>之间添加如下代码:
<style>
#fjx{display:none;width:100%;height:100%;margin:auto;background:#fff;z-index:1000;left:0;right:0;top:0;bottom:0;position:fixed;}
.fjx{display:none; text-align:center;font-size:18px;margin-top:200px;}
.fjx p{border-bottom:1px solid rgba(244,116,2,1);}
</style>
 
<script type="text/javascript">
if (document.location.host != "www.lanniaofei.com") {
window["document"]["writeln"]("<style>#fjx,.fjx{display:block!important;}</style>");
}
</script>
 
<div id="fjx"><div class="fjx"><p>懒鸟飞提示:你现在浏览的网站是镜像网站</p>请访问原网站:www.lanniaofei.com </div></div>
 
当访问原网站时,正常访问,当访问镜像网站时,会出现提示文字,效果如下图:

 
方法四:用div+css来区分镜像网站
有时候,镜像网站会屏蔽js代码,那么方法二、三的js就不能生效了。这时候我们正好可以利用js不生效,用div+css来区分镜像文件。
在网页<body></body>之间添加如下代码:
<style>
#fjx{width:100%;height:100%;margin:auto;background:#fff;z-index:1000;left:0;right:0;top:0;bottom:0;position:fixed;}
.fjx{text-align:center;font-size:18px;margin-top:200px;}
.fjx p{border-bottom:1px solid rgba(244,116,2,1);}
</style>
 
<script type="text/javascript">
window["document"]["writeln"]("<style>#fjx,.fjx{display:none!important;}</style>");
</script>
 
<div id="fjx"><div class="fjx"><p>懒鸟飞提示:你现在浏览的网站是镜像网站</p>请访问原网站:www.lanniaofei.com/</div></div>
 
当访问原网站时,正常访问,当访问镜像网站时,由于镜像网站屏蔽js,所以这个div的文字就会显示出来。效果和方法三一样,效果如下图:
 
这样镜像网站就不能正常访问了。
 
除了上面4种方法,还有php、.htaccess等方法进行镜像网站跳转原网站。但这两种方法没有测试成功,感兴趣的朋友可以自己研究一下。
 
 
 
 
QQ在线咨询
QQ客服
淘宝官网