Miklix

مطابقة الموقع بناءً على امتداد الملف باستخدام NGINX

نُشرت: ١٥ فبراير ٢٠٢٥ م في ١:٣٨:٣٤ ص UTC
آخر تحديث: ١٢ يناير ٢٠٢٦ م في ٨:٣٥:٣٧ ص UTC

تشرح هذه المقالة كيفية إجراء مطابقة الأنماط بناءً على امتدادات الملفات في سياقات الموقع في NGINX، وهو أمر مفيد لإعادة كتابة عناوين URL أو التعامل مع الملفات بشكل مختلف بناءً على نوعها.


لقد تمت ترجمة هذه الصفحة آليًا من الإنجليزية بهدف جعلها متاحة لأكبر عدد ممكن من الأشخاص. لسوء الحظ، لم يتم تطوير تقنية الترجمة الآلية بعد، لذا قد تحدث أخطاء. إذا كنت تفضل ذلك، يمكنك عرض النسخة الإنجليزية الأصلية هنا:

Match Location Based on File Extension with NGINX

تستند المعلومات الواردة في هذه المقالة إلى NGINX 1.4.6 الذي يعمل على خادم Ubuntu 14.04 x64. وقد تكون هذه المعلومات صالحة أو غير صالحة للإصدارات الأخرى.

أنا لست جيدًا جدًا في التعبيرات النمطية (وهو أمر يجب أن أعمل عليه، كما أعلم)، لذلك غالبًا ما أحتاج إلى قراءة المزيد عنها عندما يتعين عليّ القيام بأكثر من مجرد مطابقة الأنماط البسيطة في سياق موقع NGINX على سبيل المثال.

إحدى الميزات المفيدة جدًا عند الحاجة إلى التعامل مع أنواع ملفات محددة بشكل مختلف هي إمكانية مطابقة الموقع بناءً على امتداد الملف المطلوب. وهي سهلة للغاية أيضًا، إذ يمكن أن يبدو توجيه الموقع الخاص بك ببساطة على النحو التالي:

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

بالطبع، يمكنك ببساطة تغيير الامتدادات إلى ما تحتاجه.

المثال أعلاه لا يُميّز بين الأحرف الكبيرة والصغيرة (على سبيل المثال، سيطابق كلاً من .js و .JS). إذا كنت ترغب في أن يكون حساسًا لحالة الأحرف، فما عليك سوى إزالة علامة * بعد علامة ~.

الأمر متروك لك فيما ستفعله بالنتيجة؛ عادةً، ستعيد كتابتها إلى نظام خلفي يقوم بنوع من المعالجة المسبقة، أو قد ترغب فقط في قراءة الملفات من مجلدات أخرى غير تلك التي تظهر للعامة، الاحتمالات لا حصر لها ;-)

شارك على بلوسكايشارك على الفيسبوكشارك على لينكدإنشارك على تمبلرشارك على إكسشارك على لينكدإنثبت على بينتريست

ميكيل كريستنسن

عن المؤلف

ميكيل كريستنسن
ميكيل هو مؤسس ومالك موقع miklix.com. يتمتع بخبرة تزيد عن 20 عامًا كمبرمج كمبيوتر/مطور برامج محترف ويعمل حاليًا بدوام كامل في إحدى شركات تكنولوجيا المعلومات الأوروبية الكبرى. عندما لا يقوم بالتدوين، يقضي وقت فراغه في مجموعة واسعة من الاهتمامات والهوايات والأنشطة، والتي قد تنعكس إلى حد ما في تنوع الموضوعات التي يغطيها هذا الموقع.