مطابقة الموقع بناءً على امتداد الملف باستخدام NGINX
نُشرت: ١٥ فبراير ٢٠٢٥ م في ١:٣٨:٣٤ ص UTC
آخر تحديث: ١٢ يناير ٢٠٢٦ م في ٨:٣٥:٣٧ ص UTC
تشرح هذه المقالة كيفية إجراء مطابقة الأنماط بناءً على امتدادات الملفات في سياقات الموقع في NGINX، وهو أمر مفيد لإعادة كتابة عناوين URL أو التعامل مع الملفات بشكل مختلف بناءً على نوعها.
Match Location Based on File Extension with NGINX
تستند المعلومات الواردة في هذه المقالة إلى NGINX 1.4.6 الذي يعمل على خادم Ubuntu 14.04 x64. وقد تكون هذه المعلومات صالحة أو غير صالحة للإصدارات الأخرى.
أنا لست جيدًا جدًا في التعبيرات النمطية (وهو أمر يجب أن أعمل عليه، كما أعلم)، لذلك غالبًا ما أحتاج إلى قراءة المزيد عنها عندما يتعين عليّ القيام بأكثر من مجرد مطابقة الأنماط البسيطة في سياق موقع NGINX على سبيل المثال.
إحدى الميزات المفيدة جدًا عند الحاجة إلى التعامل مع أنواع ملفات محددة بشكل مختلف هي إمكانية مطابقة الموقع بناءً على امتداد الملف المطلوب. وهي سهلة للغاية أيضًا، إذ يمكن أن يبدو توجيه الموقع الخاص بك ببساطة على النحو التالي:
{
// do something here
}
بالطبع، يمكنك ببساطة تغيير الامتدادات إلى ما تحتاجه.
المثال أعلاه لا يُميّز بين الأحرف الكبيرة والصغيرة (على سبيل المثال، سيطابق كلاً من .js و .JS). إذا كنت ترغب في أن يكون حساسًا لحالة الأحرف، فما عليك سوى إزالة علامة * بعد علامة ~.
الأمر متروك لك فيما ستفعله بالنتيجة؛ عادةً، ستعيد كتابتها إلى نظام خلفي يقوم بنوع من المعالجة المسبقة، أو قد ترغب فقط في قراءة الملفات من مجلدات أخرى غير تلك التي تظهر للعامة، الاحتمالات لا حصر لها ;-)
