Shoda umístění na základě přípony souboru s NGINX
Vydáno: 15. února 2025 v 1:39:03 UTC
Poslední aktualizace: 12. ledna 2026 v 8:35:38 UTC
Tento článek vysvětluje, jak v NGINX provádět porovnávání vzorů na základě přípon souborů v kontextech umístění, což je užitečné pro přepisování URL adres nebo jiné zpracování souborů odlišně na základě jejich typu.
Match Location Based on File Extension with NGINX
Informace v tomto příspěvku jsou založeny na NGINX 1.4.6 běžícím na Ubuntu Serveru 14.04 x64. Pro jiné verze mohou, ale nemusí být platné.
Nejsem moc dobrý v regulárních výrazech (což je něco, na čem bych asi měl zapracovat, vím), takže si o tom často musím něco přečíst, když musím udělat víc než jen to nejjednodušší porovnávání vzorů, například v kontextu umístění NGINX.
Velmi užitečná je možnost, pokud potřebujete s konkrétními typy souborů zacházet odlišně, a to přiřadit umístění na základě přípony požadovaného souboru. A je to také velmi snadné, vaše direktiva pro umístění by mohla vypadat jednoduše takto:
{
// do something here
}
Rozšíření si samozřejmě můžete upravit podle potřeby.
Výše uvedený příklad nerozlišuje velká a malá písmena (například bude odpovídat jak .js, tak .JS). Pokud chcete, aby rozlišovala velká a malá písmena, stačí za znakem ~ odebrat *.
Co s daným zápasem uděláte, je jen na vás; obvykle ho přepíšete do back-endu, který provádí nějaký druh předzpracování, nebo si soubory můžete jen přečíst z jiných složek, než jak je vidíte na veřejnosti, možnosti jsou nekonečné ;-)
