ホームページ >運用・保守 >Linuxの運用と保守 >Linux Apache で同時接続とダウンロード速度を制限する方法
mod_limitipconn、これは同じソース IP に基づいて同時接続を制御する Apache の非公式モジュールです。bw_mod はソース IP に基づいて帯域幅を制限できます。どちらも Apache のサードパーティ モジュールです。
1. ダウンロード:
wget
wget
2. インストール
#tar -zxvf mod_limitipconn-0.22.tar.gz
#cd mod_limitipconn-0.22
#vi makefile
Modify: 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
を開き、次の 2 行を見つけます:
loadmodule limitipconn_module modules/mod_limitipconn.so
loadmodule bw_module modules/mod_bw.so
3.構成
< location /home/bo@jb51.net/attachments/month _*> #制御対象のパス
maxconnperip 3 #制限するスレッド数
noiplimitindex.htm #このファイルには制限なし
< ;/location>
仮想ホスト構成ファイルの下に次を追加します:
bandwidthmodule on
forcebandwidthmodule on
bandwidth all 10000 #speed limit 10k
minbandwidth all -1
設定パラメータの説明は次のとおりです:
a.bandwidthmodule on|off
//帯域制限機能を有効にするかどうかmod_bwの。
b. 帯域幅 [開始] [バイト/秒]
指定されたクライアントの最大帯域幅を設定します、0 は制限なしを意味します
帯域幅 u:[ユーザーエージェント] [bytes /s]
c. minbandwidth [from] [bytes/s]
指定したクライアント帯域幅の最小値を設定します。0 の場合は、最大帯域幅を意味します。各クライアントは 256 バイト/秒です。-1 は、bandwith
d の最大値を表します。largefilelimit [タイプ] [最小サイズ] [バイト/秒]
特定のクライアントにアクセスするための最大帯域幅を設定します特定のサイズを超えるファイル、ファイル タイプ サイズの単位はキロバイトです
#e. maxconnection [from] [max] 指定されたクライアントの最大同時接続数を設定しますf.forcebandwidthmodule [on|off] デフォルトの bw モジュールはすべてのリクエストに適用され、フィルタリング タイプを設定できます from に関して、つまりクライアント ソースは次のように分割できます。次の状況: ip は単一のホストを指定します192.168.1.22ネットワーク セグメントを指定します192.168.1.0/24 または 192.168.1.0/255.255.255.0ドメイン名単一ホストclient1.jb51.netドメイン名の指定範囲.jb51.net すべてのクライアントすべて上記の構成は、すべてのクライアントまたは特定の仮想ホストに対して構成できます
例 1:
bandwidthmodule onbandwidth all 307200bandwidth 192.168.1.2 102400bandwidth "u:^mozilla/5(.*)" 102400bandwidth "u:wget" 204800forcebandwidthmodule onlargefilelimit .avi 600 204800maxconnection all 100maxconnect 192.168.1.2 5 上記の構成の意味: mod_bw を有効にし、すべてのファイル タイプを制限する すべてのクライアントの最大帯域幅は 300k、最大同時接続数は 100192.168.1.2 の最大帯域幅は 100k、最大同時接続数は 5 です。Firefox を使用するクライアントの最大帯域幅は 100kです。Firefox を使用するクライアントの最大帯域幅は 100k です。 wget は 200kです。600k を超える avi 形式ファイルの最大帯域幅は 200kbyte/s です。例 2:
例 3:
以上がLinux Apache で同時接続とダウンロード速度を制限する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。