
Estou no CentOS 6.4 e uso o Plesk v11.5.30, embora isso não precise necessariamente ser feito via plesk.
Estou tentando limitar a velocidade de conexão a um site específico. No entanto, as únicas opções que o Plesk me oferece são "Uso máximo de largura de banda" e "Limitar conexões".
O uso máximo de largura de banda é a largura de banda total usada por um domínio, enquanto conexões é o número de conexões (obviamente). O que eu quero fazer é limitar a velocidade a 200kb/s, independentemente de quantas pessoas acessam o domínio. Mesmo que apenas uma pessoa esteja acessando, não quero que ela consiga usar toda a largura de banda, quero que ela fique limitada a 200kb/s
Existe uma maneira de limitar todas as conexões individuais a apenas 200 kb/s para que ninguém possa usar mais de 200 kb/s, mas é claro que se o tráfego for alto, eles poderão usar menos de 200 kb/s?
Para evitar que isso seja específico do plesk, é isso que está na minha configuração e fico feliz em modificá-lo manualmente se houver algum outro parâmetro que eu possa usar:
<IfModule mod_bw.c>
BandwidthModule On
ForceBandWidthModule On
Bandwidth all "0"
MaxConnection all "0"
BandWidthError 510
</IfModule>
Responder1
Eu nunca usei este módulo, masa documentaçãoparece bastante simples.
As diretivas são válidas dentro de um <VirtualHost>
bloco e só serão aplicadas a esse host virtual se for o caso. Também parece que eles não herdam de partes superiores da configuração, então você deve colocar todas as diretivas relevantes no host virtual.
Sua configuração atual define o limite de largura de banda como "0", o que significa que não há limite. Você quer 200 KB (presumo que você quis dizer kilobytes e não kilobits).
Coloque isso no host virtual que você deseja limitar:
BandwidthModule On
ForceBandWidthModule On
Bandwidth all 204800
O padrão MinBandwidth
é 256 bytes/s para que você possa lidar com 800 usuários simultâneos antes que qualquer um deles comece a receber mensagens de erro. Se você acha que 256 bytes/s é um pouco baixo, você também pode adicionar MinBandwidth all 1024
o que significa que quando você tiver mais de 200 solicitações simultâneas, o 201º receberá uma mensagem de erro em vez da página solicitada e todas as 200 anteriores serão garantido pelo menos 1 KB/s.
Normalmente não me preocupo com esses <IfModule>
blocos porque tudo o que eles fazem é esconder seus erros e fazer você pensar que o mod_bw está funcionando quando ainda nem foi carregado.
Responder2
Eu descobri isso usando LargeFileLimit:
<IfModule mod_bw.c>
BandwidthModule On
ForceBandWidthModule On
Bandwidth all "52428800"
MaxConnection all "400"
LargeFileLimit * 1024 204800
BandWidthError 510
</IfModule>
Isso significa que o domínio está limitado a 50 MB de largura de banda (52428800), que só pode ter 400 conexões ao mesmo tempo e que quaisquer arquivos acima de 1 MB serão limitados a 200 Kb/s (204800).
Para quem estiver lendo isso mais tarde, você também pode colocar uma extensão em vez de * para limitar apenas zips, rars, avis ou qualquer outra coisa.