Dans NGINX, les blocs "location" c'est un peu compliqué… pour savoir dans quel ordre est pris quoi, il faut s'accrocher un peu.
"To find location matching a given request, nginx first checks locations defined using the prefix strings (prefix locations). Among them, the location with the longest matching prefix is selected and remembered. Then regular expressions are checked, in the order of their appearance in the configuration file. The search of regular expressions terminates on the first match, and the corresponding configuration is used. If no match with a regular expression is found then the configuration of the prefix location remembered earlier is used."
Ce que je traduis par « le plus grand match sans regex (prefix location) est retenu puis on cherche dans les regex, on prend la première ; si pas de regex on prend le bloc retenu avant ».
J'ai pas tout essayé mais ça semble coïncider avec la réalité :P