nginx captura todas las demás ubicaciones que se proporcionan

19

Tengo algunas ubicaciones en mi servidor. Quiero capturar todas las otras ubicaciones que los usuarios dan a través del navegador. ¿Cómo hacer eso? Por ejemplo

 server {
     ...
     location /location1 {
              do something;
     }
     location /location2 {
              do something;
     }
     location /all_other_locations {
            return 301 http://www.google.de
     }
alabamajack
fuente

Respuestas:

31

Las ubicaciones de nginx se basan en prefijos (excepto las expresiones regulares), por lo que location /coincide con todas las solicitudes a menos que coincida una más específica.

server {
    location / {
        # catch all unless more specific location match
    }

    location /location1 {
        # do something
    }

    location /location2 {
        # do domething
    }
}
Alexey Ten
fuente
1
¿Qué pasaría si quisieras /hacer coincidir algo específico y luego todo lo demás fuera atrapado por otra cosa? ¿Usarías comodines entonces?
Tim Tisdall
3
ah .. creo que puede ser para usar location = /. La /solicitud explícita coincidirá con ella y todo lo demás irá a location /menos que algo más coincida.
Tim Tisdall