2012-03-26 5 views
12

Jak zasymulować niską przepustowość (opóźnienie sieci) w localhost (działa na wampie, Windows XP)? Chciałem ustawić go po stronie serwera, a nie po stronie klienta.Jak zasymulować niską przepustowość (opóźnienie sieci) w localhost (uruchomionym na WAMP, Windows XP)?

+0

możliwy duplikat: http://stackoverflow.com/questions/1094760/network-tools-that-simulate-slow-network-connection –

+0

Spójrz na moją odpowiedź na http://stackoverflow.com/questions/ 9742828/fake-poor-internet/9742918 # 9742918 Jeśli używasz Charles Proxy, możesz skierować do niego wielu klientów.Następnie możesz je zdławić, aby zasymulować niską przepustowość, a także zobaczyć każde wysłane żądanie. – louielouie

+0

Dzięki za oba. Szukałem czegoś w rodzaju konfiguracji WAMP, aby symulować opóźnienie bez konieczności instalowania czegokolwiek. Czy to jest możliwe ? – maan81

Odpowiedz

8

Możesz to zrobić, używając modułu do Apache o nazwie Bandwidth Mod. Mimo że ta wersja jest dla Apache 2.2.14, używam go w wersji 2.2.21 bez żadnych problemów.

Grab plik z linku powyżej bw_mod.dll, i umieścić go w Apache moduły folder (zwykle bin\Apache\Apache2.2.xx\modules w folderze instalacyjnym -WampSerwer), a następnie dodać do pliku httpd.conf:

LoadModule bw_module modules/mod_bw.dll 
BandWidthModule On 
ForceBandWidthModule On 
BandWidth all 50000 
MinBandWidth all -1 

Koniecznie sprawdź się z tym modułem , ponieważ zawiera wiele opcji.

Mam nadzieję, że to pomoże!

+0

@Ninja downvoter: czy chcesz opracować? –

1

To jest przepis na Apache 2.2.x na FreeBSD dla twojego własnego serwera LAN, co oznacza, że ​​masz dostęp do pliku apache.conf apache.conf.

Niestety, mod_bw nie działa z plikami .htaccess (jeszcze) tak łatwe i szybkie testowanie z różnymi prędkościami nie jest możliwe w ten sposób. Ale tutaj jest obejście, które działa dobrze dla mnie.

Install mod_bw na FreeBSD ...

# cd /usr/ports/www/mod_bw 
# make install clean 

Zrób prędkości dir w katalogu głównym dokumentu ...

# cd /path/to/doc/root 
# mkdir _s 

Bądź symboliczne linki w tym katalogu prędkości do głównego dokumentu ...

# 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 

Edit /usr/local/etc/apache22/httpd.conf i uczynić je linia wystąpić ...

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> 

restart apache ...

# apachectl restart 

To jest to! Możesz uzyskać dostęp do strony sieci LAN w zwykły sposób z prędkością LAN lub wybraną prędkością ...

E.g.

  • http://serverip/website_name/
  • http://serverip/_s/56k/website_name/

Goodluck!

P.S. Twoja strona musi być zaprojektowana tak, aby zawsze działała niezależnie od tego, czy znajduje się w katalogu głównym dokumentu, czy w katalogu podkatalogu.