Itugma ang Lokasyon Batay sa File Extension sa NGINX
Nai-publish: Marso 19, 2025 nang 9:29:10 PM UTC
Ipinapaliwanag ng artikulong ito kung paano gawin ang pagtutugma ng pattern batay sa mga extension ng file sa mga konteksto ng lokasyon sa NGINX, kapaki-pakinabang para sa muling pagsusulat ng URL o kung hindi man ay pangangasiwa ng mga file sa ibang paraan batay sa uri ng mga ito.
Match Location Based on File Extension with NGINX
Ang impormasyong nasa post na ito ay batay sa NGINX 1.4.6 na tumatakbo sa Ubuntu Server 14.04 x64. Maaaring tama o hindi ito para sa ibang bersyon.
Hindi ako gaanong magaling sa regular expressions (isang bagay na kailangan ko sigurong pagtrabahuhan, alam ko), kaya madalas akong nagbabasa tungkol dito kapag kailangan kong gawin ang higit pa sa pinakasimpleng pattern matching, halimbawa sa location context ng NGINX.
Isa na kapaki-pakinabang kung kailangan mong hawakan ang mga partikular na uri ng file nang iba-iba ay ang kakayahang mag-match ng location batay sa extension ng hinihinging file. At madali lang din, ang iyong location directive ay maaaring magmukhang ganito:
{
// do something here
}
Siyempre, maaari mong baguhin ang mga extension ayon sa iyong pangangailangan.
Ang halimbawa sa itaas ay hindi sensitibo sa kaso (halimbawa, ito ay magmamatch ng .js at .JS). Kung nais mong maging sensitibo ito sa kaso, alisin lamang ang * pagkatapos ng ~.
Ang gagawin mo sa match ay nasa iyo; karaniwan, irerewrite mo ito sa isang back-end na gumagawa ng ilang uri ng preprocessing, o baka gusto mo lang basahin ang mga file mula sa ibang mga folder kaysa sa kung ano ang nakikita ng publiko, ang mga posibilidad ay walang katapusan ;-)