o que é localização nginx ~ * e ~

11

Eu estou tentando entender o nginx um pouco melhor e tentando formar um regex onde cada URL que NÃO corresponde / api / postdataV1 é roteada para um cluster diferente de servidores. Eu continuo vendo essas duas coisas em exemplos sem explicação

location ~ {some regex}

location ~* (some regex}

Minha primeira pergunta é o que são estes ~ e ~ * (acho que o ~ significa apenas que estou especificando um regex?), mas e sobre ~ * então?

Eu acho que o que eu quero é isso. Isso seria correto?

location ~ ^/api/postdataV1$ {
    #matches to this route to where I want
}

location / {
    #This will be everything except /api/postdataV1 I think
}

Isso seria correto? mas e sobre o ~ * ... eu não entendo esse

obrigado Dean

    
por Dean Hiller 26.09.2013 / 16:34

1 resposta

12

Como indicado na documentação do nginx link ~ * as expressões regulares são para correspondência e diferenciação que não diferenciam maiúsculas de minúsculas ~ são para sensível.

Sua sintaxe está ok, mas pode ser reescrita sem regexes (a localização mais curta aparece por último na correspondência de solicitação):

location /api/postdata {
}

location / {
}
    
por 26.09.2013 / 17:07

Tags