caracteres nexx regex que requerem citação?

6

Então, eu estava configurando o nginx hoje e acertei um problema estranho. Eu estava tentando combinar um local como este:

location ~ ^/([0-9]+)/(.*) {
    # do proxy redirects
}

... para URLs como " link ".

Esta regra nunca foi compatível, apesar do fato de que por todos os direitos deveria. Levei algum tempo para descobrir, com base na esta documentação , que alguns caracteres em regexes precisam ser citados. O problema é que a documentação é para reescrever, e especificamente chama chaves, não colchetes. Depois de um pouco de experimentação que envolveu muita palavrões, descobri que eu poderia consertar o problema citando o regex da seguinte forma:

location ~ "^/([0-9]+)/(.*)" {
    # do proxy redirects
}

Existe uma lista em algum lugar de caracteres que o nginx requer citando regexes com? Ou poderia haver algo mais acontecendo aqui que eu esteja totalmente ausente? Este é o meu primeiro trabalho de configuração do nginx, então é muito possível que eu tenha entendido mal algo ...

    
por Michael Louis Thaler 07.10.2011 / 19:15

1 resposta

0

Você precisa do número? Eu tentaria uma variante mais simples primeiro e veria se o erro é talvez outra coisa.

Eu tentaria se ^ / [0-9] + /, ou você precisa dos elementos capturados?

    
por 08.10.2011 / 06:28