Podudaranje lokacije na temelju ekstenzije datoteke s NGINX-om
Objavljeno: 15. veljače 2025. u 01:29:38 UTC
Ovaj članak objašnjava kako izvršiti podudaranje uzoraka na temelju datotečnih ekstenzija u kontekstu lokacije u NGINX-u, korisno za prepisivanje URL-ova ili drugačije rukovanje datotekama ovisno o njihovoj vrsti.
Match Location Based on File Extension with NGINX
Informacije u ovom postu temelje se na NGINX 1.4.6 koji radi na Ubuntu Serveru 14.04 x64. Može, ali i ne mora vrijediti za druge verzije.
Nisam baš dobar u regularnim izrazima (nešto na čemu bih vjerojatno trebao poraditi, znam), pa često moram čitati o tome kada moram učiniti više od najjednostavnijeg podudaranja uzoraka u, na primjer, kontekstu lokacije NGINX-a.
Ono što je vrlo korisno ako trebate drugačije rukovati određenim vrstama datoteka je mogućnost podudaranja lokacije na temelju ekstenzije tražene datoteke. I vrlo je jednostavno, vaša direktiva o lokaciji mogla bi jednostavno izgledati ovako:
{
// do something here
}
Naravno, možete samo promijeniti ekstenzije u ono što vam je potrebno.
Gornji primjer ne razlikuje velika i mala slova (na primjer, odgovarat će i .js i .JS). Ako želite da bude osjetljivo na velika i mala slova, samo uklonite * nakon ~.
Što ćete učiniti sa šibicom ovisi o vama; obično biste to prepisali u back-end koji radi neku vrstu predprocesiranja ili biste možda samo željeli čitati datoteke iz drugih mapa od onoga kako to izgleda javnosti, mogućnosti su beskrajne ;-)