Coincidir con la ubicación según la extensión del archivo con NGINX
Publicado: 15 de febrero de 2025, 1:41:18 UTC
Última actualización: 12 de enero de 2026, 8:35:40 UTC
Este artículo explica cómo hacer una coincidencia de patrones basada en extensiones de archivos en contextos de ubicación en NGINX, lo cual es útil para reescribir URL o para manejar archivos de manera diferente según su tipo.
Match Location Based on File Extension with NGINX
La información de esta publicación se basa en NGINX 1.4.6 en Ubuntu Server 14.04 x64. Puede que no sea válida para otras versiones.
No soy muy bueno con las expresiones regulares (algo en lo que probablemente debería trabajar, lo sé), por lo que a menudo necesito leer sobre el tema cuando tengo que hacer algo más que la coincidencia de patrones más simple, por ejemplo, en el contexto de ubicación de NGINX.
Una opción muy útil si necesitas gestionar tipos de archivos específicos de forma diferente es la posibilidad de encontrar una ubicación según la extensión del archivo solicitado. Además, es muy fácil: tu directiva de ubicación podría ser así:
{
// do something here
}
Por supuesto, puedes cambiar las extensiones según tus necesidades.
El ejemplo anterior no distingue entre mayúsculas y minúsculas (por ejemplo, coincidirá con .js y .JS). Si desea que distinga entre mayúsculas y minúsculas, simplemente elimine el * después del ~.
Lo que hagas con el archivo depende de ti; normalmente, lo reescribirías en un back-end que realiza algún tipo de preprocesamiento, o quizás simplemente quieras leer los archivos de otras carpetas distintas de cómo se ve al público, las posibilidades son infinitas ;-)
