Dopasuj lokalizację na podstawie rozszerzenia pliku za pomocą NGINX
Opublikowano: 15 lutego 2025 01:10:44 UTC
Ostatnia aktualizacja: 12 stycznia 2026 08:35:48 UTC
W tym artykule wyjaśniono, jak wykonywać dopasowywanie wzorców na podstawie rozszerzeń plików w kontekstach lokalizacji w NGINX. Jest to przydatne przy przepisywaniu adresów URL lub w inny sposób obsłudze plików w zależności od ich typu.
Match Location Based on File Extension with NGINX
Informacje zawarte w tym poście dotyczą serwera NGINX 1.4.6 działającego na Ubuntu Server 14.04 x64. Mogą być lub nie być aktualne 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.
Bardzo przydatna, jeśli musisz inaczej obsługiwać określone typy plików, jest możliwość dopasowania lokalizacji na podstawie rozszerzenia żądanego pliku. To bardzo proste, dyrektywa dotycząca lokalizacji może wyglądać tak:
{
// 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 pliki .js, jak i .js). Jeśli chcesz uwzględnić wielkość liter, po prostu usuń * po znaku ~.
Co zrobisz z tym meczem, zależy od Ciebie; zazwyczaj przepiszesz 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 społeczeństwa; możliwości są nieograniczone ;-)
