Config Nginx no DreamHost VPS

1

Eu tenho meu site instalado e funcionando no nginx no meu Dreamhost VPS. Legal. Eu queria limitar o número de conexões por IP adicionando o seguinte ao bloco http do arquivo conf nginx em todo o site (/dh/nginx/servers/httpd-psxxxxxx/nginx.conf):

limit_conn_zone $binary_remote_addr zone=addr:10m;
limit_conn limit_per_ip 50;

Recarregado nginx e tudo funciona bem e dandy.

Quando o servidor é reinicializado, o nginx falha na inicialização. Eu tenho que ir para o arquivo nginx novamente, comentar as duas linhas sobre como limitar o número de conexões por IP, recarregar o nginx, então voltar e descomentar as duas linhas novamente, e então recarregar o nginx. Depois disso tudo está bem.

Se eu tentar recarregar manualmente o nginx após a reinicialização do servidor, recebo a seguinte mensagem de erro:

webserver... nginx: [emerg] zero size shared memory zone "limit_per_ip"
failed!

O que estou fazendo de errado? Tudo o que quero fazer é impedir que um único IP monopolize todas as conexões e direcione a RAM do meu VPS pelo teto, o que aciona uma reinicialização.

    
por kingkool68 19.06.2014 / 17:43

1 resposta

1

O problema é que você nomeou sua zona addr , mas depois se referiu a ela como limit_per_ip , que não é o nome selecionado.

Altere o nome da zona de addr para limit_per_ip na diretiva limit_conn_zone ou altere o nome da zona de limit_per_ip para addr na diretiva limit_conn .

    
por 19.06.2014 / 18:16