Как имитировать низкую пропускную способность (задержка сети) в localhost (работает на wamp, windows XP)? Я хотел установить его на стороне сервера, а не на стороне клиента.
Как имитировать низкую пропускную способность (задержка сети) в localhost (работает на WAMP, Windows XP)?
Ответ 1
Вы можете сделать это, используя модуль для Apache, называемый Bandwidth Mod. Несмотря на то, что эта версия для Apache 2.2.14, я использую ее на 2.2.21 без каких-либо проблем.
Возьмите файл bw_mod.dll по ссылке выше и поместите его в папку модулей Apache (обычно bin\Apache\Apache2.2.xx\modules
в вашей установке Wampserver), а затем добавьте это в свой файл httpd.conf
:
LoadModule bw_module modules/mod_bw.dll
BandWidthModule On
ForceBandWidthModule On
BandWidth all 50000
MinBandWidth all -1
Обязательно ознакомьтесь с файлом readme для этого модуля, поскольку он поставляется с множеством опций.
Надеюсь, это поможет!
Ответ 2
Это рецепт Apache 2.2.x на FreeBSD для вашего собственного сервера локальной сети, то есть у вас есть доступ к файлу apache.conf.
К сожалению, mod_bw
не работает с файлами .htaccess(пока), поэтому легко и быстро провести тестирование с различными скоростями невозможно. Но вот обходной путь, который отлично подходит для меня.
Установите mod_bw на FreeBSD...
# cd /usr/ports/www/mod_bw
# make install clean
Создайте скоростной каталог в корне вашего документа...
# cd /path/to/doc/root
# mkdir _s
Сделать символические ссылки в этом каталоге скорости до корня документа...
# cd _s
# ln -s /path/to/doc/root 33k
# ln -s /path/to/doc/root 56k
# ln -s /path/to/doc/root 128k
# ln -s /path/to/doc/root 256k
# ln -s /path/to/doc/root 512k
# ln -s /path/to/doc/root 1024k
Измените /usr/local/etc/apache22/httpd.conf
и выполните эту строку...
LoadModule bw_module libexec/apache22/mod_bw.so
<Directory "/path/to/doc/root">
Options FollowSymLinks
</Directory>
<directory /path/to/doc/root/_s/33k>
<ifmodule mod_bw.c>
BandWidthModule On
ForceBandWidthModule On
Bandwidth all 33000
</ifmodule>
</directory>
<directory /path/to/doc/root/_s/56k>
<ifmodule mod_bw.c>
BandWidthModule On
ForceBandWidthModule On
Bandwidth all 56000
</ifmodule>
</directory>
<directory /path/to/doc/root/_s/128k>
<ifmodule mod_bw.c>
BandWidthModule On
ForceBandWidthModule On
Bandwidth all 128000
</ifmodule>
</directory>
<directory /path/to/doc/root/_s/256k>
<ifmodule mod_bw.c>
BandWidthModule On
ForceBandWidthModule On
Bandwidth all 256000
</ifmodule>
</directory>
<directory /path/to/doc/root/_s/512k>
<ifmodule mod_bw.c>
BandWidthModule On
ForceBandWidthModule On
Bandwidth all 512000
</ifmodule>
</directory>
<directory /path/to/doc/root/_s/1024k>
<ifmodule mod_bw.c>
BandWidthModule On
ForceBandWidthModule On
Bandwidth all 1024000
</ifmodule>
</directory>
Перезапустить apache...
# apachectl restart
Что это! Вы можете получить доступ к веб-сайту LAN обычным способом с помощью скорости LAN или с выбранной скоростью...
например.
-
http://serverip/website_name/
-
http://serverip/_s/56k/website_name/
Гудлак!
P.S. Ваш веб-сайт должен быть спроектирован таким образом, чтобы он всегда запускался независимо от того, находится ли он в корне документа или в любом подкаталоге.