guia_rapida_de_location_y_modificadores_en_nginx
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
guia_rapida_de_location_y_modificadores_en_nginx [2021/05/10 23:26] – [Modificadores en nested location] busindre | guia_rapida_de_location_y_modificadores_en_nginx [2021/05/11 00:08] (current) – busindre | ||
---|---|---|---|
Line 3: | Line 3: | ||
==== Modificadores ==== | ==== Modificadores ==== | ||
+ | **Prioridad** | ||
+ | |||
+ | El uso de modificadores y su prioridad en Nginx es algo confuso y esta pequeña guía intenta poder aclarar todos los casos posibles. | ||
+ | |||
+ | Las coincidencias exactas " | ||
+ | |||
+ | Luego están las localizaciones que usan expresiones regulares " | ||
+ | |||
+ | Si no se usa modificador, | ||
+ | |||
+ | - Coincidencia exacta =. | ||
+ | - Coincidencia prefijo con prioridad ^~. | ||
+ | - Expresión regular (sensible a mayúsculas y no sensible a mayúsculas). | ||
+ | - Coincidencia prefijo “Ningún modificador”. | ||
**=** El bloque se considerará una coincidencia si la URI de la solicitud coincide exactamente con la ubicación indicada. Es lo primero que busca Nginx, no pueden repetirse y tienen prioridad sobre cualquier otra location, usen o no expresiones regulares. El orden de estas location NO importa. | **=** El bloque se considerará una coincidencia si la URI de la solicitud coincide exactamente con la ubicación indicada. Es lo primero que busca Nginx, no pueden repetirse y tienen prioridad sobre cualquier otra location, usen o no expresiones regulares. El orden de estas location NO importa. | ||
Line 28: | Line 42: | ||
**(ninguno)**: | **(ninguno)**: | ||
- | Si hay dos location iguales basadas en prefijo, una sin modificador y otra con ^~, la primera será la utilizada. | + | No puede haber dos location iguales basadas en prefijo, una sin modificador y otra con ^~. |
- | + | ||
- | <code bash> | + | |
- | # Query GET /cp/abc | + | |
- | location /cp/ab {} < | + | |
- | location ^~/cp/abc{} | + | |
- | </ | + | |
<code bash> | <code bash> | ||
Line 55: | Line 63: | ||
< | < | ||
< | < | ||
- | |||
==== Modificadores en nested location ==== | ==== Modificadores en nested location ==== | ||
Line 62: | Line 69: | ||
- Coincidencia exacta =. | - Coincidencia exacta =. | ||
- Coincidencia prefijo con prioridad ^~. | - Coincidencia prefijo con prioridad ^~. | ||
- | - Expresión regular (sensible a mayúsculas y no sensible a mayúsculas). | + | - Expresión regular (sensible a mayúsculas y no sensible a mayúsculas): La primera en coincidir es la location usada. |
- | - Coincidencia prefijo " | + | - Coincidencia prefijo " |
Cuando se anidan locations en nginx, se debe tener en cuenta que si el location raíz es una regex, sus location anidadas deben también usar modificadores de expresiones regulares. Si se anidan coincidencias exactas o de prefijo a una nested location con regex, estas nunca serán elegidas. | Cuando se anidan locations en nginx, se debe tener en cuenta que si el location raíz es una regex, sus location anidadas deben también usar modificadores de expresiones regulares. Si se anidan coincidencias exactas o de prefijo a una nested location con regex, estas nunca serán elegidas. |
guia_rapida_de_location_y_modificadores_en_nginx.1620681972.txt.gz · Last modified: 2021/05/10 23:26 by busindre