فاحص المحتوى المختلط

HTML للفحص

يكتشف موارد http:// المحمّلة داخل صفحة HTTPS.

التالي

بعد ترحيل موقع إلى HTTPS، فإن وسوم <img> و<script> و<link> أو <iframe> الشاردة التي لا تزال تشير إلى http://... تكسر القفل الأخضر، وفي المتصفحات الحديثة كثيرا ما تفشل في التحميل تماما. أدخل رابطا ويحمّل هذا الفاحص الصفحة، ويفحص كل مورد فرعي (صور، أوراق أنماط، سكربتات، خطوط، إطارات، فيديو، صوت)، ويسرد أي شيء يُقدَّم عبر HTTP عادي حتى تصلحه قبل أن يصطدم المستخدمون بتحذير «غير آمن بالكامل».

كيف يعمل الفحص

  1. 1

    أدخل رابطا

    رابط HTTPS. يتبع الفاحص قفزة إعادة توجيه واحدة.

  2. 2

    تُجلب الصفحة

    يُحلَّل HTML بحثا عن كل مرجع لمورد فرعي.

  3. 3

    يُصنَّف كل مرجع

    HTTPS، أو HTTP، أو نسبي للبروتوكول (`//cdn...`).

  4. 4

    تقرير مجمّع حسب النوع

    محتوى نشط مقابل سلبي، مع ترتيب حسب الخطورة.

المحتوى المختلط النشط مقابل السلبي

تعامل المتصفحات الفئتين باختلاف:

  • المحتوى المختلط النشط (السكربتات، الإطارات، أوراق الأنماط، XHR/fetch، العمال، WebSockets). محظور تماما من المتصفحات الحديثة. يشمل: <script> و<link rel="stylesheet"> و<iframe> وfetch() وXMLHttpRequest وimportScripts().
  • المحتوى المختلط السلبي (الصور، الفيديو، ملصقات الصوت). يُحمَّل لكن يُعلَّم، يسقط القفل ويعرض شريط الرابط تحذيرا. يشمل: <img> و<audio> و<video> وأهداف action في النماذج.

لماذا يهم

  • الثقة. قفل مكسور يبلّغ المستخدمين الذين يلاحظون «هذا الموقع غير آمن».
  • الوظيفة. المحتوى النشط المحظور يعني أن السكربتات لا تعمل وأوراق الأنماط لا تُطبَّق، تبدو الصفحات مكسورة.
  • SEO. يفضّل جوجل صفحات HTTPS؛ وإشارات HTTPS المكسورة تضر بالترتيب بشكل غير مباشر.
  • الامتثال. يتطلب PCI DSS وكثير من أطر الامتثال الأخرى HTTPS بلا محتوى مختلط لصفحات المعاملات.

المصادر الشائعة

المصدر الإصلاح المعتاد
CDN قديم على HTTP بدّل النطاق إلى CDN بـ HTTPS
كود تضمين YouTube / Vimeo قديم حدّث التضمين إلى النسخة الحالية
روابط سكربتات شبكات الإعلانات استخدم نسخة HTTPS (متاحة منذ سنوات)
خطوط وخرائط طرف ثالث بدّل http://fonts.googleapis.comhttps://
أدوات أزرار التواصل الاجتماعي استخدم كود الأداة الحالي
روابط صور من إنشاء المستخدم أعد الكتابة عند الحفظ؛ حمّل عبر وكيل عند العرض
روابط مكتوبة يدويا في التدوينات استبدال شامل في قاعدة البيانات

استراتيجيات الإصلاح

  1. الروابط النسبية للبروتوكول (//cdn.example.com/a.js). تُحمَّل ببروتوكول الصفحة الحالية. آمنة لمعظم شبكات CDN لكنها مهملة، فضّل https://... صريحا.
  2. أعد الكتابة في المصدر. حدّث قوالبك ومحتواك لاستخدام https://. افحص قاعدة الكود بتعبير نمطي: http://(?!localhost).
  3. ترقية سياسة أمان المحتوى. Content-Security-Policy: upgrade-insecure-requests يخبر المتصفح بإعادة كتابة روابط موارد HTTP إلى HTTPS بصمت. الأفضل للمواقع التي لا تستطيع تدقيق كل رابط.
  4. <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests"> المكافئ المضمّن.
  5. مرّر موارد HTTP فقط عبر وكيل خلال أصل HTTPS الخاص بك إن لم يكن للمصدر فعلا نقطة نهاية HTTPS (نادر اليوم).

ماذا يجد الفاحص

  • كل الروابط الخارجية المشار إليها في <img> و<script> و<link> و<iframe> و<video> و<audio> و<source>.
  • سمات action في النماذج.
  • مراجع url(...) في CSS المضمّن داخل كتل <style>.
  • لا يزحف على الموارد المحقونة بجافاسكربت، فهي مضافة وقت التشغيل وتحتاج إلى تدقيق في جانب المتصفح (تلتقطها لوحة Issues في أدوات مطوري Chrome).

الأسئلة الشائعة

جزئيا. ترويسة upgrade-insecure-requests في CSP أو وسم meta يخبر المتصفحات بإعادة كتابة روابط الموارد الفرعية HTTP إلى HTTPS تلقائيا. يعمل عندما يدعم الخادم HTTPS؛ وإذا كان المصدر بـ HTTP فقط، فتفشل إعادة الكتابة.

لا. فقط الموارد المشار إليها في HTML الثابت. السكربتات التي تنشئ عناصر <img> وقت التشغيل لن تظهر. تلتقطها لوحة Issues في أدوات مطوري Chrome داخل المتصفح.

إنها آمنة من المحتوى المختلط في صفحات HTTPS (ترث HTTPS). لكنها تنكسر على الأدوات الداخلية بـ HTTP فقط أو الصفحات المؤرشفة، وهي مهملة. فضّل https:// صريحا.

كاش المتصفح. أعد التحميل القسري (Ctrl+Shift+R / Cmd+Shift+R) أو اختبر في نافذة تصفح خفي لتأكيد الإصلاح. تظهر تقارير CSP وتحذيرات وحدة التحكم الحالة الحالية.

يسترجع جالب في الخادم الصفحة للتحليل. لا يُخزَّن الرابط نفسه بما يتجاوز الطلب.

أدوات ذات صلة

الأداة متاحة بلغات أخرى