mod_limitipconn,這個是Apache的一個非官方模塊,根據同一個來源IP進行并發連接控制,Bw_mod,它可以根據來源IP進行帶寬限制,它們都是apache的第三方模塊。
1.下載:
wget http://dominia.org/djao/limit/mod_limitipconn-0.22.tar.gz
wget http://bwmod.sourceforge.net/files/mod_bw-0.7.tgz
2.安裝
#tar -zxvf mod_limitipconn-0.22.tar.gz
#cd mod_limitipconn-0.22
#vi Makefile
修改:apxs = “/usr/local/apache2/bin/apxs” # 這里是自己apache的apxs路徑,加載模塊
或者
#/usr/local/apache2/bin/apxs -i -c -a mod_limitipconn.c 來加載模塊
#make
#make install
#tar -xvf mod_bw-0.7.tgz
#cd mod_bw
#/usr/local/apache2/bin/apxs -i -c -a /home/kenami/mod_bw/mod_bw.c
下面用vi打開apache 的配置文件 httpd.conf
發現了以下兩行:
LoadModule limitipconn_module modules/mod_limitipconn.so
LoadModule bw_module modules/mod_bw.so
3.配置
<IfModule mod_limitipconn.c>
<Location /home/bo@Vevb.com/attachments/month _*> #需要控制的路徑
MaxConnPerIP 3 #限制的線程數
NoIPLimit index.htm #對此文件不做限制
</Location>
</IfModule>
在虛擬主機配置文件下面加上:
BandwidthModule On
ForceBandWidthModule On
Bandwidth all 10000 #限速10K
MinBandwidth all -1
配置參數說明如下:
a. BandWidthModule On|Off
//是否開啟mod_bw的帶寬限制功能。
b. BandWidth [From] [bytes/s]
設置指定客戶機最大帶寬,0表示不限制
BandWidth u:[User-Agent] [bytes/s]
c. MinBandWidth [From] [bytes/s]
設置指定客戶機帶寬的最小值,為0表示每個客戶端帶寬最大為256bytes/s,為-1表示最大為BandWith的值
d. LargeFileLimit [Type] [Minimum Size] [bytes/s]
設置訪問超出特定大小的某種文件的最大帶寬,文件類型大小單位為kbytes
e. MaxConnection [From] [Max]
設置指定客戶機的最大并發連接數
f. ForceBandWidthModule [On|Off]
默認bw模塊將應用所有請求,On可設置過濾類型
關于From,即客戶端來源可分以下幾種情況:
IP指定單一主機
192.168.1.22
指定網段
192.168.1.0/24或
192.168.1.0/255.255.255.0
域名單一主機
Client1.Vevb.com
新聞熱點
疑難解答