nginx: correspondência de regex de não igual?

2

existe um equivalente "não" para correspondências nginx? Estou pensando

location !~ "\.(html|php)$" {
    deny all;
}

para permitir a exibição apenas de arquivos html e php. a alternativa é "negar tudo" seguido por um ~ com "permitir tudo". infelizmente, isso parece interferir de alguma forma com alguma mágica de localização anterior no meu arquivo nginx.

    
por ivo Welch 25.09.2015 / 18:45

2 respostas

1

locais regexados também correspondem ao seu pedido. Então você também pode usar algo assim:

location ~* "\.(html|php)$" { ...; break; } location ~* "." { deny all; }

Observe que o segundo local também deve ser baseado em regexp.

    
por 25.09.2015 / 21:03
0

Você pode usar a lógica de localização aninhada assim:

location / {
  deny all;
  location ~* "\.(html|php)$" {
    Allow all;
  }
}
    
por 25.09.2015 / 19:07

Tags