【教程】简单说说如何防止网站被反代

我提出的这些方法也仅仅只是抛转引玉,欢迎有更好办法的朋友回复与我讨论讨论。

普通方法:

给网站添加一些特殊页面,如aaabbb.html,
并使用脚本自动读取访问日志(看看哪些ip访问过这个页面),筛选出反代服务器的IP并屏蔽之。
(防御强度:2)

逗比方法:

获取对方ip然后到处公布并发动DDCC攻击
(防御强度:99999。把对方服务器打死一劳永逸)

方法一:

最简单的,网站添加跳转js代码,判断浏览器URL,如果不是本站地址就进行跳转。
(防御强度:1)

if (document.domain != 'example.com' && document.domain != 'www.example.com'){
    window.location..href='https://www.example.com/';
}

方法二:

利用DNS解析的搜索引擎识别自动将爬虫引导至正常带文章内容的副站,
访客访问的主站将文章内容做懒加载,由js文件动态向后端发送api请求获取文章内容后在显示到页面上,
并加上法一中的判断代码然后一同进行高强度混淆处理。
(防御强度:3)

方法三:

在DNS解析处将搜索引擎的爬虫引导至副站,
主站的文章进行字体反爬虫处理,且关键页面的HTML标签元素由js动态生成,
加上法一中的判断代码然后一同进行高强度混淆处理。
(防御强度:5)

方法四:

在法二、法三的基础上,每天由脚本为js文件填充一些垃圾数据再混淆后更新js文件,增加反混淆难度。
(防御强度:4|6)

注意:

方法二、方法三因为DNS解析商不一定能够完美识别所有来自搜索引擎的爬虫,可能会将之引导去副站,影响SEO。

对于图片:

全站图片请务必加上水印,
在文章中的代码处若需要使用一些变量等,可使用与网站主人相关的内容如主人ID等做替换,增加镜像站流量转移到源站的可能性。
图床需进行referer白名单处理,防止其他人直接引用原资源,造成不必要的流量浪费。

发表评论

邮箱地址不会被公开。 必填项已用*标注