如何使用mod_slotlimit(Debian Etch)管理Apache资源限制
mod_slotlimit是一个使用动态时隙分配算法和静态规则的Apache模块,可以管理每个运行站点的资源。
安装
为了编译mod_slotlimit,您需要安装apxs2(APache eXtension工具)并配置Apache。
以下命令将安装它:
apt-get install apache2-prefork-dev
现在我们下载http://sourceforge.net/projects/mod-slotlimit/上的源代码包,或者使用wget应用程序下载它,并直接链接到存储库:
wget http://kent.dl.sourceforge.net/sourceforge/mod-slotlimit/mod_slotlimit.tar.gz
下一个打开归档,编译和安装这些命令模块:
tar zxvf mod_slotlimit.tar.gz
cd mod_slotlimit-1.0
make
make install
在您的Web服务器的主配置文件中添加以下命令以加载mod_slotlimit模块。
vi /etc/apache2/httpd.conf
[...] LoadModule slotlimit_module /usr/lib/apache2/modules/mod_slotlimit.so |
2.配置
在我们编写我们的配置之前,我们应该知道这个模块支持哪些指令。
有关详细信息,请参阅mod_slotlimit的文档:
AvailableSlotsPercent - 为了激活动态时隙分配算法,可用的apachesocket的百分比
MaxConnectionsPerSite - 每个运行站点的最大连接数
LimitSite - 特定站点限制
LimitSiteConnections - “LimitSite”的最大连接数
ClientIpLimit - 每个IP最多同时连接的数量
ForceVhostName - 在记分板中强制vhost主机名。
当vhost主机名不匹配网站访问时有用,例如,如果您使用的是mod_vhost_alias
现在我们打开我们的Web服务器的配置文件,以写入配置:
vi /etc/apache2/apache2.conf
[...] <IfModule mod_slotlimit.c> AvailableSlotsPercent 15 MaxConnectionsPerSite 30 LimitSite www.BadSite.xxx LimitSiteConnections 15 ClientIpLimit 15 ForceVhostName On </IfModule> [...] |
最后我们重新启动Apache:
/etc/init.d/apache2 restart
链接
- mod_slotlimit: http : //sourceforge.net/projects/mod-slotlimit/
- Apache: http : //httpd.apache.org
- Debian: http : //www.debian.org