Miklix

Dopasuj lokalizację na podstawie rozszerzenia pliku za pomocą NGINX

Opublikowano: 15 lutego 2025 01:10:44 UTC

W tym artykule wyjaśniono, jak wykonywać dopasowywanie wzorców na podstawie rozszerzeń plików w kontekstach lokalizacji w serwerze NGINX. Jest to przydatne przy przepisywaniu adresów URL lub w inny sposób obsługi plików w zależności od ich typu.


Ta strona została przetłumaczona maszynowo z języka angielskiego, aby była dostępna dla jak największej liczby osób. Niestety, tłumaczenie maszynowe nie jest jeszcze dopracowaną technologią, więc mogą wystąpić błędy. Jeśli wolisz, możesz wyświetlić oryginalną angielską wersję tutaj:

Match Location Based on File Extension with NGINX

Informacje zawarte w tym poście odnoszą się do NGINX 1.4.6 działającego na Ubuntu Server 14.04 x64. Mogą być lub nie być ważne dla innych wersji.

Nie jestem zbyt dobry w wyrażeniach regularnych (wiem, że pewnie powinienem nad tym popracować), więc często muszę zgłębiać ten temat, gdy muszę wykonać coś więcej niż tylko najprostsze dopasowywanie wzorców, na przykład w kontekście lokalizacji NGINX.

Jedną z bardzo przydatnych funkcji, jeśli musisz inaczej obsługiwać określone typy plików, jest możliwość dopasowania lokalizacji na podstawie rozszerzenia żądanego pliku. I jest to również bardzo proste, Twoja dyrektywa dotycząca lokalizacji może po prostu wyglądać tak:

location ~* \.(js|css|html|txt)$
{
    // do something here
}

Oczywiście, możesz po prostu zmienić rozszerzenia na takie, których potrzebujesz.

Powyższy przykład nie uwzględnia wielkości liter (na przykład dopasuje zarówno .js, jak i .JS). Jeśli chcesz, aby uwzględniał wielkość liter, po prostu usuń * po ~.

Co zrobisz z tym meczem, zależy od Ciebie; zazwyczaj przepisujesz go do zaplecza, które wykonuje pewnego rodzaju przetwarzanie wstępne, lub możesz po prostu chcieć odczytać pliki z innych folderów, niż są widoczne dla ogółu; możliwości są nieograniczone ;-)

Udostępnij na BlueskyUdostępnij na FacebookuUdostępnij na LinkedInUdostępnij na TumblrUdostępnij na XUdostępnij na LinkedInPrzypnij na Pintereście

Mikkel Bang Christensen

O autorze

Mikkel Bang Christensen
Mikkel jest twórcą i właścicielem miklix.com. Ma ponad 20-letnie doświadczenie jako profesjonalny programista komputerowy / programista oprogramowania i jest obecnie zatrudniony na pełny etat w dużej europejskiej korporacji IT. Kiedy nie bloguje, poświęca swój wolny czas na szeroki wachlarz zainteresowań, hobby i aktywności, co może w pewnym stopniu znaleźć odzwierciedlenie w różnorodności tematów poruszanych na tej stronie.