网站被盗版(反向代理)怎么办?
之前有被反代的经历,写了篇《我的博客这么有名了吗?》讲述处理的过程,目前已经成功解决。有朋友留言,也有网友给我发邮件,有类似的经历,问我怎么办?这里就集中回复。不敢班门弄斧,只求相互学习。
一、什么是反向代理
举例来理解,比如用户访问 https://oqaz.xyz(之前盗版我网站的域名),结果看到的却是我网站的内容,除了域名不同,其他内容几乎一模一样。原因是由于访问 https://oqaz.xyz 时,它是偷偷从我的服务器上爬取资源,然后作为自己的内容吐给用户。但用户并不知情,这里所提到的 https://oqaz.xyz 这个域名对应的服务器就设置了反向代理功能。
二、为什么要反向代理
反向代理可以解决一些问题,比如有些国外的网站在国内是无法访问的,通过反向代理可以访问的到。还有些垃圾站,本身无内容又想让搜索引擎收录,于是就反代一个网站,加速收录,这样就构成了恶意反向代理,即盗版别人的网站。
Nginx的出现让反向代理的实现变的特别简单,特别是一些建站平台,比如宝塔面板,直接将反向代理作为一个功能提供给客户,只需要填入反向代理的目标域名或IP,一键就能完成反向代理,给一些别有用心的人提供了可乘之机。
三、恶意反向代理(盗版)的危害
首先是占用服务器资源,导致网站打开速度受影响;其次,对搜索引擎而言,相当于建了一个与你一模一样的站点,那么你的站点会受到影响,甚至被搜索引擎降权;再次,一些人还会在反代你的网站后挂马,诈骗等,一些用户不明所以可能会上当,维权时去找你,你就说冤不冤;此外,如果被恶意代理的页面,还挂有你的联盟广告(比如Adsense),很容易被Adsense封号。当然,还有很多危害,不再一一列举。
四、怎样防止网站被反代
1、js解决方案
<script type="text/javascript">
if (document.domain != 'minirizhi.com' && document.domain != 'www.minirizhi.com'){
window.location.href='https://minirizhi.com';
}
</script>
如果地址栏中的网址不是 minirizhi.com 和 www.minirizhi.com 中的任何一个,那么就把地址栏转向 https://minirizhi.com 。如果用iframe做了个框架,把我们网站嵌入其中,可加入以下代码:
<script type="text/javascript">
if (top.location != self.location)top.location=self.location;
</script>
2、php解决方案
$proxy_rs = $this -> proxy_filter();
if( $proxy_rs != 'minirizhi.com' || $proxy_rs != 'www.minirizhi.com' )
{
echo '非法反向代理访问';
//header('Location: https://minirizhi.com');是否跳转原站
exit;
}
public function proxy_filter()
{
/*
$svrUrl = 'http://' . $_SERVER['SERVER_NAME'].$_SERVER["PHP_SELF"];
if (!empty($_SERVER["QUERY_STRING"]))
{
$svrUrl .= "?".$_SERVER["QUERY_STRING"];
}
return $svrUrl;
*/
return $_SERVER['SERVER_NAME'];
}
五、网站已被反代怎么办
如果您的网站已经被恶意反代,那么封对方IP是最直接有效的方式。如果对方没有缓存,封了IP对方网站也就无法访问了。但是有些恶意反代开启了缓存,有些把图片什么的都缓存到对方网站了,那就比较难搞了。除了封IP基本没别的办法了,这样你更新至少它就不会更新了。
一旦网站被恶意反代了,对方把js一旦屏蔽,再使用js那些方法基本么有用,只能是封IP。如果它换IP,换一个禁一个,看它有多少。据我观察,做这些基本都是国外的,如果你国外没有访问量,直接禁止国外ip段更省事了。
六、怎么找对方代理服务器IP地址
首先,在自己服务器上建一个PHP文件,为了方便访问,可以建在根目录上,比如info.php,输入以下代码并保存。
<?php phpinfo();?>
其次,访问对方域名/info.php,会显示PHP环境参数。如果您的网站用到了CDN,搜索REMOTE_ADDR,得到的IP地址即是对方代理服务器IP。如果您的网站未用cdn,域名是直接解析到真实服务器IP,则搜索HTTP_X_FORWARDED_FOR得到的IP地址即是对方代理服务器IP。
最后,直接设置禁止对方代理服务器IP访问就可以了。
- 上一篇: 乡土情节
- 下一篇: Typecho主题模板:Biji - 轻量笔记主题(更新V2.8)
不错的方法,收藏了,一般通过百度统计也能发现反代网站。
是的
学到了,感谢
不客气
关键是 被反代了是不是自己还很难察觉
是呢,不过可以搜索引擎搜下同名
哎 啥人都有 这种人真讨厌
我发现这是一种职业了