Estou tentando entender o nginx um pouco melhor e tentando formar um regex em que 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 ~
e ~*
(acho que o ~
justo significa que estou especificando uma regex?), Mas e ~*
então?
O que 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 quanto a ~*
... eu não entendo essa
obrigado Dean
nginx location
, primeiro hit é este :) mas devo admitir, é preciso se acostumar com a documentação nginx, esp. encontrar o material certo abaixo da seção de módulos.Respostas:
Conforme declarado na documentação do nginx ,
~*
regex é para correspondência que não diferencia maiúsculas de minúsculas e diferencia~
maiúsculas de minúsculas.Sua sintaxe está correta, mas pode ser reescrita sem regex (o menor local fica na última correspondência de solicitações):
fonte
/api/PostData
ela não corresponderá sem #~*