إدارة انتهاء صلاحية محتوى الويب في Azure Content Delivery Network

هام

سيتم إيقاف Azure CDN Standard من Microsoft (الكلاسيكي) في 30 سبتمبر 2027. لتجنب أي تعطيل للخدمة، من المهم ترحيل Azure CDN Standard من ملفات تعريف Microsoft (الكلاسيكية) إلى Azure Front Door Standard أو المستوى المتميز بحلول 30 سبتمبر 2027. لمزيد من المعلومات، راجع Azure CDN Standard من إيقاف Microsoft (الكلاسيكي).

سيتم إيقاف Azure CDN من Edgio في 4 نوفمبر 2025. يجب ترحيل حمل العمل إلى Azure Front Door قبل هذا التاريخ لتجنب تعطيل الخدمة. لمزيد من المعلومات، راجع الأسئلة المتداولة حول إيقاف Azure CDN من Edgio.

يمكن تخزين الملفات من خوادم الويب الأصلية التي يمكن الوصول إليها بشكل عام مؤقتا في Azure Content Delivery Network حتى انقضاء وقتها للعيش (TTL). يتم تحديد TTL بواسطة Cache-Control العنوان في استجابة HTTP من خادم الأصل. توضح هذه المقالة كيفية تعيين عناوين Cache-Control لميزة Web Apps في Microsoft Azure App Service وAzure Cloud Services وتطبيقات ASP.NET ومواقع خدمات معلومات الإنترنت (IIS)، والتي تم تكوينها جميعًا بشكل مماثل. يمكنك تعيين العنوان Cache-Control إما باستخدام ملفات التكوين أو برمجيًا.

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

تلميح

يمكنك اختيار تعيين عدم وجود TTL على ملف. في هذه الحالة، تطبق Azure Content Delivery Network تلقائيا TTL افتراضيا لمدة سبعة أيام، إلا إذا قمت بإعداد قواعد التخزين المؤقت في مدخل Microsoft Azure. تنطبق مدة البقاء TTL الافتراضية هذه فقط على تحسينات تسليم الويب العامة. بالنسبة لتحسينات الملفات الكبيرة، تكون مدة البقاء TTL الافتراضية يومًا واحدًا، وتكون مدة البقاء الافتراضية سنة واحدة في تحسينات تدفق الوسائط.

لمزيد من المعلومات حول كيفية عمل Azure Content Delivery Network لتسريع الوصول إلى الملفات والموارد الأخرى، راجع نظرة عامة على Azure Content Delivery Network.

تعيين رؤوس التحكم في ذاكرة التخزين المؤقت باستخدام قواعد التخزين المؤقت لشبكة تسليم المحتوى

الطريقة المفضلة لتعيين عنوان خادم ويب Cache-Control هي استخدام قواعد التخزين المؤقت في مدخل Microsoft Azure. لمزيد من المعلومات حول قواعد التخزين المؤقت لشبكة تسليم المحتوى، راجع التحكم في سلوك التخزين المؤقت لشبكة تسليم المحتوى Azure باستخدام قواعد التخزين المؤقت.

إشعار

تتوفر قواعد التخزين المؤقت فقط ل Azure CDN Standard من ملفات تعريف Edgio . بالنسبة إلى Azure CDN Premium من ملفات تعريف Edgio ، يجب استخدام محرك قواعد شبكة تسليم المحتوى Azure في مدخل الإدارة للحصول على وظائف مماثلة.

للانتقال إلى صفحة قواعد التخزين المؤقت لـ CDN:

  1. في مدخل Microsoft Azure، حدد ملف تعريف شبكة تسليم المحتوى، ثم حدد نقطة النهاية لخادم الويب.

  2. في الجزء الأيسر ضمن الإعدادات، حدد "Caching rules".

    لقطة شاشة لزر قواعد التخزين المؤقت لشبكة تسليم المحتوى.

    تظهر صفحة "Caching rules".

    لقطة شاشة لصفحة التخزين المؤقت لشبكة تسليم المحتوى.

لتعيين عناوين Cache-Control لخادم الويب باستخدام قواعد التخزين المؤقت العمومية:

  1. ضمن "قواعد التخزين المؤقت العمومية"، عيّن "سلوك التخزين المؤقت لسلسلة الاستعلام" على تجاهل سلاسل الاستعلام وعين سلوك التخزين المؤقت على تجاوز.

  2. بالنسبة إلى مدة انتهاء صلاحية ذاكرة التخزين المؤقت، أدخل 3600 في المربع ثواني أو 1 في المربع ساعات.

    لقطة شاشة لمثال قواعد التخزين المؤقت العمومية لشبكة تسليم المحتوى.

    تعين قاعدة التخزين المؤقت العمومية هذه مدة ذاكرة التخزين المؤقت لمدة ساعة واحدة وتؤثر على جميع الطلبات إلى نقطة النهاية. يتجاوز أي Cache-Control أو Expires عناوين HTTP يتم إرسالها بواسطة خادم الأصل المحدد بواسطة نقطة النهاية.

  3. حدد حفظ.

لتعيين عناوين Cache-Control لملف خادم ويب باستخدام قواعد التخزين المؤقت المخصصة:

  1. ضمن قواعد التخزين المؤقت المخصصة، أنشئ شرطين للمطابقة:

    1. بالنسبة إلى شرط المطابقة الأول، قم بتعيين شرط المطابقة إلى المسار وأدخل /webfolder1/*قيمة المطابقة. عيّن سلوك التخزين المؤقت على تجاوز وأدخل 4 في حقل أيام.

    2. بالنسبة إلى شرط المطابقة الثاني، قم بتعيين شرط المطابقة على المسار وأدخل /webfolder1/file1.txtلقيمة المطابقة. عيّن سلوك التخزين المؤقت على تجاوز وأدخل 2 في حقل أيام.

    لقطة شاشة لمثال قواعد التخزين المؤقت المخصصة لشبكة تسليم المحتوى.

    تعين قاعدة التخزين المؤقت المخصصة الأولى مدة ذاكرة التخزين المؤقت لمدة أربعة أيام لأي ملفات في المجلد /webfolder1 على خادم الأصل المحدد بواسطة نقطة النهاية. تتجاوز القاعدة الثانية القاعدة الأولى للملف file1.txt فقط وتحدد مدة ذاكرة التخزين المؤقت لمدة يومين له.

  2. حدد حفظ.

تعيين عناوين Cache-Control باستخدام ملفات التكوين

بالنسبة للمحتوى الثابت، مثل الصور وأوراق الأنماط، يمكنك التحكم في تكرار التحديث عن طريق تعديل applicationHost.config أو Web.config ملفات التكوين لتطبيق الويب الخاص بك. لتعيين عنوان Cache-Control للمحتوى الخاص بك، استخدم العنصر <system.webServer>/<staticContent>/<clientCache> في أي من الملفين.

استخدام ملفات ApplicationHost.config

ملف ApplicationHost.config هو الملف الجذر لنظام تكوين IIS. تؤثر إعدادات التكوين في ملف ApplicationHost.config على جميع التطبيقات على الموقع، ولكن يتم تجاوزها بواسطة إعدادات أي ملفاتWeb.config موجودة لتطبيق ويب.

استخدام ملفات Web.config

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

على سبيل المثال، يمكنك تعيين عنصر <clientCache> في ملف Web.config في المجلد الجذر لتطبيق الويب الخاص بك لتخزين كل المحتوى الثابت على تطبيق الويب الخاص بك مؤقتًا لمدة ثلاثة أيام. يمكنك أيضًا إضافة ملف Web.config في مجلد فرعي مع المزيد من المحتوى المتغير (على سبيل المثال، \frequent) وتعيين عنصره <clientCache> لتخزين محتوى المجلد الفرعي مؤقتًا لمدة ست ساعات. النتيجة الصافية هي أن المحتوى على موقع ويب بأكمله يتم تخزينه مؤقتًا لمدة ثلاثة أيام، باستثناء أي محتوى في الدليل \frequent، والذي يتم تخزينه مؤقتا لمدة ست ساعات فقط.

يوضح مثال ملف تكوين XML التالي كيفية تعيين العنصر <clientCache> لتحديد الحد الأقصى لعمر ثلاثة أيام:

<configuration>
    <system.webServer>
        <staticContent>
            <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="3.00:00:00" />
        </staticContent>
    </system.webServer>
</configuration>

لاستخدام السمة cacheControlMaxAge، يجب تعيين قيمة السمة cacheControlMode إلى UseMaxAge. تسبب هذا الإعداد في إضافة عنوان HTTP والتوجيه، Cache-Control: max-age=<nnn>، إلى الاستجابة. تنسيق قيمة الفترة الزمنية للسمة cacheControlMaxAge هو <days>.<hours>:<min>:<sec>. يتم تحويل قيمته إلى ثوان ويتم استخدامها كقيمة للتوجيه Cache-Control max-age . لمزيد من المعلومات حول العنصر <clientCache>، راجع ClientCache< لذاكرة التخزين المؤقت >للعميل.

إعداد رؤوس Cache-Control برمجيًا

بالنسبة للتطبيقات ASP.NET، يمكنك التحكم في سلوك التخزين المؤقت لشبكة تسليم المحتوى برمجيا عن طريق تعيين الخاصية HttpResponse.Cache لواجهة برمجة تطبيقات .NET. للحصول على معلومات حول خاصية HttpResponse.Cache، راجع خاصية HttpResponse.Cacheوفئة HttpCachePolicy.

للتخزين المؤقت لمحتوى التطبيق برمجيًا في ASP.NET، اتبع الخطوات التالية:

  1. تحقق من وضع علامة على المحتوى على أنه قابل للتخزين المؤقت عن طريق تعيين HttpCacheability إلى Public.
  2. قم بتعيين مدقق ذاكرة التخزين المؤقت عن طريق استدعاء إحدى الطرق التالية HttpCachePolicy :
    • استدعاء SetLastModified لتعيين قيمة الطابع الزمني للعنوان Last-Modified.
    • استدعاء SetETag لتعيين قيمة للعنوان ETag.
  3. اختياريًا، حدد وقت انتهاء صلاحية ذاكرة التخزين المؤقت عن طريق استدعاء SetExpires لتعيين قيمة للعنوان Expires. وإلا، يتم تطبيق الأساليب الافتراضية لذاكرة التخزين المؤقت الموضحة سابقًا في هذا المستند.

على سبيل المثال، لتخزين المحتوى مؤقتًا لمدة ساعة واحدة، أضف تعليمة C# البرمجية التالية:

// Set the caching parameters.
Response.Cache.SetExpires(DateTime.Now.AddHours(1));
Response.Cache.SetCacheability(HttpCacheability.Public);
Response.Cache.SetLastModified(DateTime.Now);

اختبار العنوان Cache-Control

يمكنك بسهولة التحقق من إعدادات TTL لمحتوى الويب الخاص بك. باستخدام أدوات مطور المستعرض، اختبر أن محتوى الويب الخاص بك يتضمن عنوان الاستجابة Cache-Control . يمكنك أيضا استخدام أداة مثل wget أو Fiddler لفحص رؤوس الاستجابة.

الخطوات التالية