Rejeitar pedidos com caracteres unicode especiais no Nginx

4

Gostaria de bloquear / negar todas as solicitações que continham um ou mais caracteres não-ascii.

Por exemplo, estou recebendo solicitações como estas:

/\ufffd?s=p&z=\ufffd&g=\ufffd&o=2

Onde \ ufffd é o " caractere de substituição ".

Isso está fazendo com que meu aplicativo da web me envie erros por e-mail porque meu banco de dados ainda não é UTF-8 (longa história).

Eu sei que devo corrigir o problema, não ocultá-lo, mas até que eu o faça, impedir que todas as solicitações estranhas cheguem ao aplicativo impedirá que minha caixa postal seja preenchida com erros.

Eu também sei que todas as URLs neste site em particular não contêm caracteres não-ascii, por isso essa correção rápida não quebrará nada.

Obrigado!

    
por Tiago 14.04.2014 / 21:52

1 resposta

0

Você pode associar tal URL usando o próprio caractere de substituição na diretiva location:

location /� {
  return 400; # Or whatever you would like to do.
}
    
por 07.04.2015 / 02:39

Tags