Miklix

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

نُشرت: ١٥ فبراير ٢٠٢٥ م في ١:٣٨:٣٤ ص UTC

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


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

Match Location Based on File Extension with NGINX

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

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

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

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

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

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

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

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

ميكيل بانج كريستنسن

عن المؤلف

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