Estas ubicaciones son diferentes. El primero coincidirá, /production
por ejemplo, que podría no ser lo que esperaba. Así que prefiero usar ubicaciones con una barra inclinada final.
Además, tenga en cuenta que:
Si una ubicación se define mediante una cadena de prefijo que termina con el carácter de barra diagonal, y las solicitudes son procesadas por uno de proxy_pass, fastcgi_pass, uwsgi_pass, scgi_pass o memcached_pass, en respuesta a una solicitud con URI igual a esta cadena, pero sin el barra inclinada final, una redirección permanente con el código 301 se devolverá al URI solicitado con la barra inclinada añadida.
Si tienes algo como:
location /product/ {
proxy_pass http://backend;
}
e ir a http://example.com/product
, nginx lo redireccionará automáticamente a http://example.com/product/
.
Incluso si no usa una de estas directivas anteriores, siempre puede hacer la redirección manualmente:
location = /product {
rewrite ^ /product/ permanent;
}
o, si no desea redirigir, puede usar:
location = /product {
proxy_pass http://backend;
}
No, estos no son lo mismo: necesitará usar una barra inclinada final con una expresión regular para que coincida con ambos, es decir
Consulte esta respuesta relacionada para obtener una respuesta más detallada sobre cómo hacer coincidir la URL completa.
fuente