Miklix

მდებარეობის შეხამება ფაილის გაფართოების საფუძველზე NGINX-თან

გამოქვეყნებულია: 15 თებერვალი, 2025, 01:31:45 UTC
ბოლო განახლება: 12 იანვარი, 2026, 08:36:10 UTC

ეს სტატია განმარტავს, თუ როგორ უნდა მოხდეს შაბლონის შესაბამისობის გაკეთება NGINX-ში მდებარეობის კონტექსტებში ფაილის გაფართოებების საფუძველზე, რაც სასარგებლოა URL-ის გადაწერისთვის ან ფაილების სხვაგვარად დამუშავებისთვის მათი ტიპის მიხედვით.


ეს გვერდი მანქანურად ითარგმნა ინგლისურიდან, რათა რაც შეიძლება მეტი ადამიანისთვის ხელმისაწვდომი ყოფილიყო. სამწუხაროდ, მანქანური თარგმანი ჯერ კიდევ არ არის სრულყოფილი ტექნოლოგია, ამიტომ შეიძლება მოხდეს შეცდომები. თუ გსურთ, შეგიძლიათ ნახოთ ორიგინალური ინგლისური ვერსია აქ:

Match Location Based on File Extension with NGINX

ამ პოსტში მოცემული ინფორმაცია ეფუძნება Ubuntu Server 14.04 x64-ზე გაშვებულ NGINX 1.4.6 ვერსიას. შესაძლოა, ის სხვა ვერსიებისთვის მართებული იყოს ან არ იყოს.

რეგულარული გამოსახულებების გამოყენება დიდად კარგი არ გამომდის (ვიცი, რომ ალბათ უნდა ვიმუშაო), ამიტომ ხშირად მიწევს ამ თემაზე ინფორმაციის წაკითხვა, როდესაც უბრალოდ ნიმუშების შესაბამისობის უმარტივესი ხერხის გაკეთება მიწევს, მაგალითად, NGINX-ის მდებარეობის კონტექსტში.

ერთ-ერთი ძალიან სასარგებლო ვარიანტი, თუ კონკრეტული ფაილების ტიპების განსხვავებულად დამუშავება გჭირდებათ, არის მოთხოვნილი ფაილის გაფართოების მიხედვით მდებარეობის შესაბამისობის შესაძლებლობა. ეს ძალიან მარტივია, თქვენი მდებარეობის დირექტივა შეიძლება ასე გამოიყურებოდეს:

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

რა თქმა უნდა, შეგიძლიათ უბრალოდ შეცვალოთ გაფართოებები ისე, როგორც გჭირდებათ.

ზემოთ მოცემულ მაგალითში რეგისტრის მიმართ მგრძნობიარე არ არის (მაგალითად, ის შეესაბამებოდეს როგორც .js-ს, ასევე .JS-ს). თუ გსურთ, რომ რეგისტრის მიმართ მგრძნობიარე იყოს, უბრალოდ წაშალეთ * სიმბოლო ~ სიმბოლოს შემდეგ.

შესატყვისის გამოყენება თქვენზეა დამოკიდებული; როგორც წესი, მას გადაწერთ ბექ-ენდში, რომელიც გარკვეულ წინასწარ დამუშავებას ახორციელებს, ან შეიძლება უბრალოდ ფაილების წაკითხვა სხვა საქაღალდეებიდან გსურთ, გარდა იმ საქაღალდეებისა, რომლებიც საზოგადოებისთვის ხილულია, შესაძლებლობები უსასრულოა ;-)

გააზიარე Bluesky-ზეგააზიარეთ Facebook-ზეგააზიარეთ LinkedIn-ზეგააზიარეთ Tumblr-ზეგააზიარეთ X-ზეგააზიარეთ LinkedIn-ზეPinterest-ზე დამაგრება

მიკელ კრისტენსენი

ავტორის შესახებ

მიკელ კრისტენსენი
მაიკლ არის miklix.com-ის შემქმნელი და მფლობელი. მას აქვს 20 წელზე მეტი გამოცდილება, როგორც პროფესიონალი კომპიუტერული პროგრამისტი/პროგრამული უზრუნველყოფის შემქმნელი და ამჟამად მუშაობს სრულ განაკვეთზე დიდ ევროპულ IT კორპორაციაში. როდესაც ბლოგს არ წერს, თავისუფალ დროს ატარებს ინტერესების, ჰობიებისა და აქტივობების უზარმაზარ სპექტრზე, რაც შეიძლება გარკვეულწილად აისახოს ამ ვებსაიტზე გაშუქებულ თემებზე.