Limiter la bande passante dans apache2

Si vous en êtes la c’est que vous rencontrez certainement des problèmes liés aux aspirateurs de sites ou afin de brider le téléchargement de certaines données sur votre site. Avec apache il existe un module qui s’appelle mod_bw, bw pour Bandwidth. Nous allons voir comment le mettre en place sur notre serveur apache. Bien évidemment je tourne sur du debian.

On commence par installer notre paquet

  1. /*
  2. apt-get install libapache2-mod-bw
  3. */

Activation du module

  1. /*
  2. cd /etc/apache2/mods-enable
  3. ln -s ../mods-available/bw.load bw.load
  4. */

Pour mes tests je crée un fichier de type bloc de 20M

  1. /*
  2. dd if=/dev/zero of=/var/www/client1/fichier.tmp bs=20M count=1
  3. */

Passons maintenant à la configuration d’apache. On édite le vhost de son choix et on y ajoute ceci

  1. /*
  2. #Permet d’activer le module si Off alors aucunes directives ne sera prise en compte.
  3. BandwidthModule On
  4. #La limitation est appliquée à tous les utilisateurs
  5. ForceBandWidthModule On
  6. #Ici nous limitons le téléchargement des fichiers .tmp(accepte toutes les extensions) de taille minimal 5M et le téléchargement est limité à 10ko/s
  7. LargeFileLimit .tmp 5 10000
  8. */

D’autres directives intéressantes comme :

  1. /*
  2. #Limite la bande passante en fonction de votre navigateur prends en compte également wget
  3. BandWidth u:[User-Agent] [bytes/s]
  4. #Limite la bande passante en fonction de votre provenance [ip,localhost etc]
  5. BandWidth [From] [bytes/s]
  6. */

Toutes les autres directives se trouvent à cette emplacement :

  1. /*
  2. /usr/share/doc/libapache2-mod-bw/mod_bw.txt
  3. */

Après mes tests il s’avèrent que le vitesse de téléchargement durant les premières secondes ne soit pas celle qui a été configuré.

Related posts

Leave a Comment