محلل رؤوس ذاكرة التخزين المؤقت

حلل رؤوس التخزين المؤقت HTTP لأي عنوان URL. افحص Cache-Control وExpires وETag وLast-Modified وVary وAge وإشارات التخزين المؤقت الشائعة لـ CDN لفهم سلوك التخزين المؤقت للمتصفح مقابل التخزين المؤقت المشترك. يتضمن تتبع إعادة التوجيه وعرض الرؤوس الخام والتصفية واكتشاف المشكلات وتصدير JSON/PDF.

Loading…

حول محلل رؤوس التخزين المؤقت

الصق عنوان URL وافهم على الفور كيفية تخزينه مؤقتًا: توجيهات المتصفح، والتخزين المؤقت المشترك لـ CDN/الوكيل (s-maxage، عناصر تحكم الوكيل)، وأدوات التحقق (ETag/Last-Modified)، وأنماط إعادة التحقق (stale-while-revalidate، stale-if-error). استخدمه لتصحيح أداء الموقع، ومنع التخزين المؤقت العرضي لـ HTML، والتحقق من سياسات التخزين المؤقت للأصول الثابتة.

الميزات

  • تدقيق التخزين المؤقت بناءً على URL مع بطاقة نقاط واضحة + نتائج (التركيز على رؤوس التخزين المؤقت/الأداء).
  • اتبع عمليات إعادة التوجيه (حتى 10) لمعرفة مكان تطبيق قواعد التخزين المؤقت فعليًا.
  • عرض الرؤوس الخام للشفافية الكاملة (ما أعاده الخادم/CDN بالفعل).
  • إبرازات تحليل التخزين المؤقت: توجيهات Cache-Control وExpires/Pragma والتعارضات.
  • فحوصات التحقق: اكتشاف ETag وLast-Modified (لطلبات الشرطية وإعادة التحقق).
  • تحليل Vary للكشف عن سلوك Vary المفقود أو المحفوف بالمخاطر (خاصة للمحتوى المخصص).
  • اكتشاف إشارات CDN: Age وVia وCF-Cache-Status وX-Cache ورؤوس على طراز Fastly/Akamai/CloudFront.
  • المرشحات ووضع "المشكلات فقط" للتركيز بسرعة على المشكلات القابلة للتنفيذ.
  • تصدير النتائج كتقارير JSON وPDF (ممتاز للتدقيقات وتسليمات العملاء).
  • الفحص الأولي بـ HEAD (التراجع إلى GET) لتقليل عرض النطاق الترددي مع الحفاظ على التوافق.

🧭 كيفية الاستخدام for cache-headers-analyzer

1

أدخل عنوان URL

الصق عنوان URL الكامل الذي تريد تدقيقه (مثال: [https://example.com/static/app.css](https://example.com/static/app.css)).

2

اختر سلوك الطلب

احتفظ بـ "جرب HEAD أولاً (التراجع إلى GET)" ممكّنًا للفحص السريع. مكّن "اتبع إعادة التوجيه" إذا كان عنوان URL قد يعيد التوجيه (HTTP→HTTPS، www، CDN، إلخ).

3

اختر تركيز المحلل

استخدم "تلقائي (موصى به)" للحصول على رؤية متوازنة. انتقل إلى "التخزين المؤقت للمتصفح" أو "التخزين المؤقت لـ CDN / الوكيل" أو "التخزين المؤقت لـ API" لإعطاء الأولوية للنتائج الأكثر صلة بنقطة النهاية الخاصة بك.

4

راجع النتائج وفئات الرؤوس

افحص النقاط/النتائج أولاً، ثم تعمق في توجيهات التخزين المؤقت وأدوات التحقق (ETag/Last-Modified) وتحليل Vary وإشارات CDN (Age، رؤوس حالة التخزين المؤقت). شغّل "إظهار الرؤوس الخام" إذا كنت بحاجة إلى الاستجابة الكاملة.

5

صدّر تقريرًا

حمّل تقرير JSON للأتمتة أو تقرير PDF للتدقيقات والمشاركة مع زملاء الفريق/العملاء.

المواصفات الفنية

نموذج الطلب

يقوم هذا الأداة بإجراء فحص لرؤوس عنوان URL مع إمكانية متابعة إعادة التوجيه. تحاول إجراء طلب HEAD أولاً (إذا تم تمكينه) وتتراجع إلى GET عند الحاجة.

الإعدادالسلوكالافتراضي
تجربة HEAD أولاً (التراجع إلى GET)يستخدم HEAD لجلب الرؤوس بسرعة؛ يتراجع إلى GET إذا كان HEAD غير مدعوم أو غير كافٍمفعل
متابعة إعادة التوجيهيتتبع سلسلة إعادة التوجيه لفحص سلوك التخزين المؤقت النهائيمفعل
الحد الأقصى لإعادة التوجيهحد إعادة التوجيه لمنع الحلقات اللانهائية10 (نطاق 0–20)
المهلةحد مهلة الطلب15000 مللي ثانية
وكيل المستخدميحدد وكيل المستخدم للطلبEncode64Bot/1.0 (+[https://encode64.com](https://encode64.com))
الشبكات الخاصةيمنع الوصول إلى نطاقات الشبكات الخاصة لأسباب أمنيةمعطل (الشبكات الخاصة غير مسموح بها)

الرؤوس والإشارات التي تم تحليلها

يركز المحلل على دلالات التخزين المؤقت (متصفحات ومخابئ مشتركة) بالإضافة إلى إشارات حواف CDN الشائعة.

الفئةأمثلة
توجيهات التخزين المؤقتCache-Control, Expires, Pragma, Surrogate-Control, CDN-Cache-Control
المدققاتETag, Last-Modified (تُستخدم للطلبات الشرطية / إعادة التحقق)
سلوك المخزن المؤقت المشتركs-maxage, stale-while-revalidate, stale-if-error (عند وجودها في Cache-Control)
سلوك VaryVary (اختلافات مفتاح التخزين المؤقت وسلامة التخصيص)
إشارات CDN/الوكيلAge, Via, CF-Cache-Status, X-Cache, X-Cache-Hits, Server-Timing وإشارات الحواف الأخرى
بعض رؤوس CDN خاصة بالبائع؛ قد يختلف وجودها ومعناها حسب المزود والإعدادات.

الاستدلالات (ما الذي يُطلق التحذيرات)

تُشتق النتائج من استدلالات التخزين المؤقت العملية للمساعدة في اكتشاف سياسات التخزين المؤقت المفقودة أو المتناقضة أو الضعيفة.

الاستدلالما الذي يفحصه
غياب Cache-Controlيُحذر عند غياب Cache-Control
توجيهات متضاربةيُحذر عند ظهور توجيهات غير متسقة (مثل: نوايا تخزين مختلطة)
غياب أدوات التحققيُحذر عندما تفتقر الاستجابات القابلة للتخزين إلى ETag/Last-Modified
أدوات تحقق ضعيفةيُعلَم عن أنماط أدوات التحقق الضعيفة حيثما كان ذلك مناسباً
مخاطر Varyيُحذر عندما يبدو أن Vary مفقود حيث من المحتمل الحاجة إلى التباين
عدم تطابق Pragma no-cacheيُحذر عند ظهور Pragma: no-cache بدون Cache-Control مقابلة

التصنيف (ثابت مقابل HTML مقابل API)

يمكن للمحلل استنتاج نية نوع المحتوى من مسار URL لتخصيص توصيات التخزين المؤقت.

الفئةأنماط المسارات (أمثلة)
أصول ثابتة.css, .js, .png, .svg, .woff2, إلخ.
HTML.html, .htm
APIمسارات تبدأ بـ /api/ أو تنتهي بـ .json
إذا كان عنوان URL الخاص بك لا يتطابق مع هذه الأنماط، استخدم "تركيز المحلل" لتوجيه التوصيات.

سطر الأوامر

استخدم هذه المقاطع من CLI لفحص رؤوس التخزين المؤقت محلياً. إنها لا تحل محل نتائج/درجة هذه الأداة، لكنها تساعدك على إعادة إنتاج النتائج بسرعة.

macOS / Linux

جلب الرؤوس بطلب HEAD

curl -I [https://example.com/static/app.css](https://example.com/static/app.css)

يفحص Cache-Control و Expires و ETag و Last-Modified و Vary وإشارات CDN دون تنزيل المحتوى.

اتبع عمليات إعادة التوجيه وأظهر الرؤوس

curl -IL [https://example.com/](https://example.com/)

يظهر سلسلة إعادة التوجيه حتى تتمكن من التحقق من مكان تغيير توجيهات التخزين المؤقت.

Run

Windows (PowerShell)

الحصول على رؤوس الاستجابة

(Invoke-WebRequest -Uri [https://example.com/static/app.css](https://example.com/static/app.css) -Method Head).Headers

يسرد العناوين بما في ذلك Cache-Control و ETag و Last-Modified وعناوين CDN الخاصة بالبائع عند وجودها.

بالنسبة للأصول الثابتة ذات أسماء الملفات المشفرة (app.abc123.css)، يُفضل استخدام التخزين المؤقت طويل الأمد مع خاصية immutable. بالنسبة لملفات HTML، كن محافظًا لتجنب تقديم صفحات مخصصة قديمة.

حالات الاستخدام

تدقيق التخزين المؤقت للأصول الثابتة (CSS/JS/الصور/الخطوط)

تحقق من إمكانية تخزين الأصول ذات البصمة الإلكترونية لفترة طويلة وإمكانية إعادة التحقق منها بكفاءة عند الحاجة.

  • تأكد من تضمين Cache-Control لـ max-age طويل و (عند الاقتضاء) immutable
  • تأكد من وجود أدوات التحقق (ETag أو Last-Modified) لإعادة التحقق الآمنة
  • تحقق من مؤشرات ضربات التخزين المؤقت لـ CDN (Age, CF-Cache-Status, X-Cache)
Cache-Control: public, max-age=31536000, immutable
ETag: "686897696a7c876b7e"
Vary: Accept-Encoding

منع التخزين المؤقت العرضي لصفحات HTML

اكتشف الحالات التي يتم فيها تخزين صفحات HTML مؤقتًا بشكل مفرط على مستوى CDN أو المتصفح، مما قد يعطل عمليات تسجيل الدخول والتخصيص واتساق عرض محركات البحث.

  • اكتشف Cache-Control متساهلًا للغاية على HTML
  • حدد Vary المفقود حيث يختلف المحتوى حسب ملفات تعريف الارتباط أو المصادقة أو اللغة
  • تأكد من أنماط إعادة التحقق الآمنة

مراجعة التخزين المؤقت لنقاط نهاية API

افهم ما إذا كان تم تمكين ذاكرة التخزين المؤقت المشتركة لاستجابات API وما إذا كان API الخاص بك قابلًا للتخزين المؤقت بأمان.

  • اكتشف التخزين المؤقت المشترك عبر s-maxage
  • حدد استراتيجيات stale-while-revalidate / stale-if-error
  • علّم على أدوات التحقق المفقودة عندما تكون استجابات API قابلة للتخزين المؤقت

تصحيح سلوك CDN عبر عمليات إعادة التوجيه

تعيد العديد من المواقع التوجيه (HTTP→HTTPS، apex→www، إعادة توجيه اللغة). تساعد هذه الأداة في ضمان بقاء سياسات التخزين المؤقت متسقة من القفزة الأولى إلى الاستجابة النهائية.

  • تحقق من العناوين في كل قفزة وعلى الرابط النهائي
  • اكتشف تغييرات رأس التخزين المؤقت التي أدخلتها قواعد الحافة أو إعادة كتابة المصدر

❓ Frequently Asked Questions

ما هي العناوين التي تحللها هذه الأداة للتخزين المؤقت؟

تركز على دلالات التخزين المؤقت والإشارات: Cache-Control و Expires و Pragma و Age و ETag و Last-Modified و Vary، بالإضافة إلى مؤشرات CDN/الوكيل الشائعة مثل Via و CF-Cache-Status و X-Cache وعناوين الحافة ذات الصلة.

لماذا أرى نتائج تخزين مؤقت مختلفة بين المتصفح و CDN؟

تتبع المتصفحات توجيهات التخزين المؤقت من طرف إلى طرف (Cache-Control، Expires) بينما قد تطبق شبكات CDN والوكلاء قواعد ذاكرة التخزين المؤقت المشتركة (s-maxage، Surrogate-Control) وسياسات الحافة. يمكن أن تكون الاستجابة قابلة للتخزين المؤقت عند الحافة ولكنها قصيرة العمر في المتصفح، أو العكس.

ما هو استخدام ETag و Last-Modified؟

هما أداتا تحقق للطلبات الشرطية. باستخدام ETag (If-None-Match) أو Last-Modified (If-Modified-Since)، يمكن للعملاء وذاكرات التخزين المؤقت إعادة التحقق من الموارد وتلقي 304 Not Modified خفيفة الوزن عندما لا يتغير المحتوى.

هل يجب عليّ تخزين صفحات HTML مؤقتًا لفترة طويلة؟

عادة لا. غالبًا ما يتغير HTML بشكل متكرر وقد يكون مخصصًا. يمكن أن يؤدي التخزين المؤقت العدواني إلى تقديم محتوى قديم أو خاطئ. يُفضل التخزين المؤقت القصير مع إعادة التحقق، واستخدم قواعد Vary الصحيحة عندما يعتمد المحتوى على العناوين/ملفات تعريف الارتباط.

ما هو Vary ولماذا هو مهم؟

يخبر Vary ذاكرات التخزين المؤقت بأي رؤوس طلب تؤثر على الاستجابة (مثل Accept-Encoding). يمكن أن يؤدي Vary المفقود أو غير الصحيح إلى قيام ذاكرات التخزين المؤقت بتقديم المتغير الخاطئ (مضغوط مقابل غير مضغوط، متغيرات اللغة، إلخ).

هل من الآمن لصق روابط URL هنا؟

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

هل يمكنني تصدير التحليل؟

نعم. تدعم الأداة تصدير تقرير بتنسيق JSON وتقرير PDF حتى تتمكن من مشاركة النتائج أو إرفاقها بمراجعات الأداء.

Pro Tips

Performance Tip

إذا كانت أصولك تحتوي على بصمة رقمية (تجزئة في اسم الملف)، فاستخدم مدة صلاحية طويلة (max-age) + ثابتة (immutable) للحصول على أفضل أداء للزيارات المتكررة.

Security Tip

إذا كانت صفحة HTML مخصصة (كوكيز/مصادقة)، فتجنب التخزين المؤقت في ذواكر التخزين المشتركة ما لم تتحكم بالكامل في مفتاح التخزين المؤقت وسلوك Vary.

Performance Tip

يُفضل استخدام أدوات التحقق (ETag أو Last-Modified) على الموارد القابلة للتخزين المؤقت حتى يتمكن العملاء من إعادة التحقق باستخدام 304 بدلاً من إعادة التحميل.

Best Practice

انتبه للتوجيهات المتضاربة مثل no-store المختلطة مع max-age طويلة؛ فهذا يشير عادةً إلى إعدادات خاطئة.

Best Practice

عند تصحيح أخطاء إعادة التوجيه، قارن رؤوس التخزين المؤقت في كل مرحلة؛ حيث يمكن لقواعد الحافة تغيير التخزين المؤقت بين عمليات إعادة التوجيه وعنوان URL النهائي.

CI Tip

قم بتصدير تقارير JSON واحتفظ بها في مخرجات CI/مراجعات الأداء لتتبع التراجعات بمرور الوقت.

Additional Resources

Other Tools

محلل رؤوس التخزين المؤقت — فحص Cache-Control وETag وإشارات CDN والتخزين المؤقت للمتصفح | Encode64