NGINX: ограничиваем скорость виртуальному хосту.

Автор:
Опубліковано: 4489 днів назад (2 січня 2012)
Рубрика: Без рубрики
0
Голосів: 0
Ранее я уже описывал вариант ограничения скорости и трафика отдельному виртуалхосту средствами Apache. Сегодня же опишу ограничение скорости одному сайту средствами Nginx. Просто так случилось, что на сервере работает Apache+Nginx, и если вводить ограничения лишь в Apache, то ограничение будет работать не в полной мере. Ведь статика отдается nginx.

После чтения документации все стало ясно. В конфигурации нгинкс, нужному virtualhost-у просто дописываем пару строк:

Код PHP:
  1. if ( $query_string !~* ‘premium=true' ) {
  2. set $limit_rate 228k;
  3. }
У меня получилось следующее:
Код PHP:
  1. ee /usr/local/etc/nginx/nginx.conf
Код PHP:
  1.  
  2. server {
  3. listen 191.29.125.78:80;
  4. server_name auto-car.in.ua www.auto-car.in.ua;
  5. rewrite ^(/manager/.*)$ https://$host$1 permanent;
  6. error_page 404 = @fallback;
  7. location ~* ^/(webstat/|awstats|webmail/|myadmin/|manimg/) {
  8. proxy_pass http://191.29.125.78:8080;
  9. proxy_redirect http://auto-car.in.ua:8080/ /;
  10. proxy_set_header Host $host;
  11. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  12. proxy_set_header X-Real-IP $remote_addr;
  13. }
  14.  
  15. if ( $query_string !~* ‘premium=true' ) {
  16. set $limit_rate 120k;
  17. }
  18. location / {
  19. proxy_pass http://191.29.125.78:8080;
  20. proxy_redirect http://auto-car.in.ua:8080/ /;
  21. proxy_set_header Host $host;
  22. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  23. proxy_set_header X-Real-IP $remote_addr;
  24. }
  25. location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar)$ {
  26. root /home/andrey/data/www/auto-car.in.ua;
  27. access_log /home/httpd-logs/auto-car.in.ua.access.log ;
  28. access_log /home/nginx-logs/andrey isp;
  29. }
  30. location @fallback {
  31. proxy_pass http://191.29.125.78:8080;
  32. proxy_set_header Host $host;
  33. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  34. proxy_set_header X-Real-IP $remote_addr;
  35. }
  36. }
  37.  
Ну и следует перезапустить nginx.
Установка Memcached на Debian | Как самому установить CDMA 3G антенну
Коментарі (0)

Коментарі відсутні. Ваш буде першим!

← Назад

Яндекс.Метрика