Apache2:限制每个 IP/客户端的同时请求和限制带宽?

Apache2:限制每个 IP/客户端的同时请求和限制带宽?

我想限制单个 apache vhost 上每个 IP/客户端的同时请求和带宽限制。换句话说,我想确保这个托管大型媒体文件的网站不会因为有人试图一次性下载所有内容而受到攻击(前几天晚上就发生过这种情况)。

我想限制此网站的整体传出传输速度,并将单个 IP 可以与服务器建立的连接数限制为合理的默认值(即在多个请求的正常浏览器限制内,这样页面加载就不会受到太大影响)。如果我可以实际将其范围限定为文件类型(即不考虑 Web 文件,但仅将这些规则应用于媒体文件),那就更好了。

我们在所有服务器上运行 Ubuntu 9.04,并且有两个 apache/php 服务器通过 squid 代理服务器通过 Round Robin 进行负载平衡。MySQL 也在自己的机器上运行。我们有足够的带宽给他们,所以我并不希望总体上限,而只是想限制为这个网站提供服务所需的内存/CPU 数量。这些服务器上还有其他网站,我们不想对它们应用这些规则,只是想防止这个网站占用所有资源。

如果您需要更多信息,请告诉我!提前感谢您的建议!

答案1

尝试使用http://opensource.adnovum.ch/mod_qos/mod_qos 现在负责处理所有事情 :)

答案2

http://www.cohprog.com/mod_bandwidth.html可以满足您大约 80% 的需求。

为了调整流量,你可以看看 tchttp://lartc.org/

相关内容