所以我在一个本地公司的小型服务器上的Apache日志中find了这个:
1.2.3.4 - - [09/Nov/2015:17:00:16 +0000] "GET /wp-content/uploads/2012/08/gold-coins.jpeg HTTP/1.1" 301 342
每天约有50万次,拥有15万个独特IP。 我已经redirect到我的网站外(因此301)的stream量,因为它是服务器崩溃。 但它仍然在使用一些带宽。 补救这种情况的最好方法是什么?
这个问题被称为图像盗链。
Nginx可以通过多种方式进行configuration,以保护您的安全。 在这里阅读它:
http://www.htpcbeginner.com/image-hotlink-protection-nginx/
http://nginxlibrary.com/hotlink-protection/
http://nodotcom.org/nginx-image-hotlink-rewrite.html
Nginx热链接保护问题
正如你所说的,有150K的IP地址达到了500K,这意味着每个地址大概有3次。 考虑到这一点,您还可以添加浏览器caching这样的静态jpeg文件混合,以避免66%的请求。 从一个所谓的无Cookie域提供静态文件保存了另一个位。
另一种考虑的方法是在防火墙级别禁止IP,例如在Fail2Ban的帮助下。 如果您在第一次下载该文件后禁止每个请求,则可以节省66%的请求。 因为它永远不会到达你的networking服务器,所以节省了大量的资源。 但是这并没有阻止它的来源。
基于引荐的热链接保护是理想的,当你保留这样的引用链表时,你可以要求他们停止盗链,所以这个问题希望在一段时间后消失。
在阿帕奇你可以很容易地停止盗链: