Apache控制(限制)頻寬的利器Bandwidth Mod(mod_bw)

| No Comments | No TrackBacks 分享

www.apache.org如果你是用Apache Web Server自己架站,而且對外頻寬又不大的話,是否常因為對外頻寬被你架設的網站使用完,而造成你整各網路都很慢呢?

 這時你就需要使用Apache的一個模組 mod_bw(mod_bandwidth)。它可以讓Apache 來控制管理你的頻寬,才不會導致對外(Up Bandwith)頻寬被用完,連帶影響對內(Down Bandwith)頻寬也變慢。

 首先到https://bwmod.sourceforge.net/下載符合你作業平台的Bandwidth Mod(mod_bw)版本。

 PS.目前 Bandwidth Mod 0.7已經支援Apache 2.0版。

Linux 安裝方式(Linux Install)
1.下載最新版本

root# wget https://bwmod.sourceforge.net/files/mod_bw-0.7.tgz

2.解壓縮檔案,並到解開的目錄中
root# wget https://bwmod.sourceforge.net/files/mod_bw-0.7.tgz
root# tar -vfxz mod_bw-0.7.tgz
root# cd mod_bw-0.7

3.修改mod_bw 0.7的bug:
 由於mod_bw 0.7在編譯時有各bug,會導致在安裝後出現apr_atomic_add找不到的錯誤,所以要修改mod_bw.c
 將原本的:

/* Compatibility for ARP < 1 */
#if (APR_MAJOR_VERSION < 1)
#define apr_atomic_inc32 apr_atomic_inc
#define apr_atomic_dec32 apr_atomic_dec
#define apr_atomic_add32 apr_atomic_add
#define apr_atomic_cas32 apr_atomic_cas
#define apr_atomic_set32 apr_atomic_set
#endif

 改成:

/* Compatibility for ARP < 1 */
/*
#if (APR_MAJOR_VERSION < 1)
#define apr_atomic_inc32 apr_atomic_inc
#define apr_atomic_dec32 apr_atomic_dec
#define apr_atomic_add32 apr_atomic_add
#define apr_atomic_cas32 apr_atomic_cas
#define apr_atomic_set32 apr_atomic_set
#endif
*/

4.執行模組安裝
root# apxs -i -a -c mod_bw.c

 這時就會安裝到你的Apache的模組裡,並且http.conf也已經自動加上了:
LoadModule bw_module modules/mod_bw.so

5.編輯http.conf,並在你要控制頻寬的目錄中加上:

<Directory "/">
# Limit BW usage
BandWidthModule On
ForceBandWidthModule On
#開放20KB對外使用
Bandwidth all 20480
#每個Connection最小頻寬為2K
MinBandwidth all 2048
</Directory>

6.重新啟動Apache。這時他就開始發生作用了。^^

 

相關文章:

No TrackBacks

TrackBack URL: /cgi-bin/mt/mt-tb.cgi/44

Leave a comment

September 2011

Sun Mon Tue Wed Thu Fri Sat
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  

Archives

Powered by Movable Type 4.25