O Nginx Plus incorporou opções para limitar a largura de banda por host.
Se você quiser alcançá-lo sobre a versão da comunidade do nginx, você tem duas opções: (Como é apenas uma extensão por IP pooling de largura de banda.)
1: Limite a largura de banda de todo o processo nginx, usando ferramentas externas ou tabelas ip.
2: Sirva esse conteúdo específico via proxy-pass para lighttpd e defina um acelerador de servidor no lighttpd
server.kbytes-per-second = 6250
Se downloads.domain.net seria a coisa que queremos estrangular, Lighthttpd teria a seguinte configuração:
server.port = 81
server.document-root = "/path/to/downloads"
index-file.names = ( )
Nginx:
server {
listen 80;
server_name downloads.domain.net;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass http://127.0.0.1:81;
}
}
É claro que você também pode fazer proxy por arquivos, pastas, etc. específicos.
Por fim: Usando isso e também a aceleração da tabela ip todo o tráfego da porta 80 (e 443) é a solução definitiva caso você não queira passar por um ponto específico de largura de banda. (Por exemplo, os serviços de VoIP podem exigir um limite rígido no tráfego http)