感谢江南才子的投递
每一个HTTP请求都应该带有一个用户代理字串(User-Agent),不同的浏览器或下载工具所发送的用户代理是一般是不同的,迅雷也不例外。而很巧的是,迅雷发送的用户代理几乎是唯一的,通过这一点,我们就可以识别出迅雷的请求。知道了迅雷的用户代理以后,我们通过比对每一个请求所发来的用户代理,就可以识别出哪些请求是迅雷的,而哪些普通用户的请求。这就是通过HTTP限制迅雷的核心所在。
每一个HTTP请求都应该带有一个用户代理字串(User-Agent),不同的浏览器或下载工具所发送的用户代理是一般是不同的,迅雷也不例外。而很巧的是,迅雷发送的用户代理几乎是唯一的,通过这一点,我们就可以识别出迅雷的请求。知道了迅雷的用户代理以后,我们通过比对每一个请求所发来的用户代理,就可以识别出哪些请求是迅雷的,而哪些普通用户的请求。这就是通过HTTP限制迅雷的核心所在。
由于也有可能有极小一部分用户使用和迅雷相同的用户代理,为了避免这些用户无法正常浏览网站,我们可以采取以下策略:
- 限制或仅限制迅雷(或使用与迅雷相同户代理的用户)对资源型文件的请求
- 限制或仅限制迅雷(或使用与迅雷相同户代理的用户)对大型文件的请求
- 限制或仅限制带有Range请求头的迅雷(或使用与迅雷相同户代理的用户)的请求
通过应用以上策略,我们就可以保证迅雷不会对网站造成太大影响,同时也保证了极小部分用户的正常浏览不会受到太大影响。
虽然不同的迅雷版本有不用的用户代理(如迅雷国际版的用户代理可能就与迅雷不同),但迅雷和Web迅雷被使用得最为广泛,因此只要限制掉迅雷和Web迅雷的请求基本上就可以消除迅雷对网站造成的影响了。
更新日志:
GSIXI更新到0.13.4版,已经可以识别迅雷5.7.9.466版本,并修正了0.13.3需要.Net支持的问题。
GSSXI v0.2 新增了以下特性:
- 提供日志功能,可记录GSSXI的启动情况,观察GSSXI是否成功加载
- 提供配置文件功能,可在配置文件中自定义功能和发送给客户端的屏蔽消息
- 提供屏蔽IP功能,可以将使用迅雷的IP屏蔽一定时间
下载页面:http://www.pojiezhan.com/download/soft-372.html