محدودیت در دانلود همزمان و اتصالات
اعمال محدودیت برای تعداد اتصالات همزمان و یا حداکثر میزان دانلود در لحظه یکی از مواردی است که اکثر افرادی که سایت دانلود دارند در سرور های خود اعمال می کنند.
برای این محدودیت در apache می توانیم از مود bw استفاده کنیم.
این آموزش مربوط به سرور با کنترل پنل دایرکت ادمین می باشد که توسط پیشگام وب تهیه شده است.

برای نصب mod_bw دستورات زیر را در سرور وارد میکنیم:
|
1
2
3
4
5
6
|
cd /rootwget http://files.directadmin.com/services/custombuild/mod_bw-0.92.tgzmkdir mod_bwcd mod_bwtar xvzf ../mod_bw-0.92.tgz/usr/sbin/apxs -i -a -c mod_bw.c |
ممکن است بعد از وارد کردن آخرین خط دستورات فوق با خطاهای زیر مواجه شوید:
mod_bw.c: In function ‘get_bw_rate’:
mod_bw.c:567: error: ‘conn_rec’ has no member named ‘remote_addr’
mod_bw.c: In function ‘get_maxconn’:
mod_bw.c:658: error: ‘conn_rec’ has no member named ‘remote_addr’
mod_bw.c: In function ‘get_sid’:
mod_bw.c:709: error: ‘conn_rec’ has no member named ‘remote_addr’
معمولا این خطا زمانی رخ می دهد که شما قصد نصب این ماژول را روی apache 2.4 داشته باشید ، در اینصورت فایل mod_bw.c را ویرایش کنید و remote_addr -> client_addr تبدیل کنید ، همچنین remote_ip -> client_ip تبدیل کنید.
بعد ازین مورد مقدار زیر بصورت خودکار در فایل httpd.conf وارد میشود:
|
1
|
LoadModule bw_module /usr/lib/apache/mod_bw.so |
در ادامه با وارد کردن دستور زیر:
|
1
|
nano /etc/httpd/conf/extra/httpd-includes.conf |
فایل httpd-includes را ویرایش میکنیم و مقدار زیر را در ان وارد میکنیم و این فایل را ذخیره میکنیم:
|
1
2
3
4
5
6
7
8
|
BandWidthModule OnForceBandWidthModule OnBandWidth all 102400000MinBandwidth all -1MaxConnection all 3#<Location /modbw># SetHandler modbw-handler#</Location> |
در واقع تنظیم می شود هر ای پی نهایتا در هر ثانیه می توانید 3 اتصال داشته باشد و تا 100 مگ می تواند دانلود کند.
سپس apache را ریستارت میکنیم.