عداد على صفحة HTTPS
موقع يعمل عبر HTTPS. يرى الزوار رمز القفل. ثم يُلصق فيه شيء من موقع آخر، فيختفي القفل — أو لا يظهر الشيء الملصوق ببساطة.
هذا هو المحتوى المختلط (mixed content)، ويستحق عشر دقائق لفهمه لأنه يعطّل بصمت كثيرًا من الأدوات القديمة المضمَّنة.
ما تفعله المتصفحات حيال ذلك
لا يُسمح لصفحة محمّلة عبر HTTPS بأن تجلب بهدوء أجزاء منها عبر HTTP العادي. فالمتنصت الذي يستطيع تعديل طلب صورة غير مشفّر يستطيع تعديل ما يراه الزوار، ولذلك يرفض المتصفح السماح بالخلط بين الاثنين.
بالنسبة إلى الصور والسكربتات، إما أن ترقّي المتصفحات الحديثة الطلب إلى HTTPS من تلقاء نفسها أو تحظره تمامًا. وأيّ الأمرين يحدث يتوقف على المتصفح ونوع المورد، ولا يمكن الاعتماد بأمان على أيٍّ من النتيجتين.
موقف Stats4U
تمت معالجة ذلك في موضعين. فعنوان نقطة العدّ مكتوب داخل السكربت بصيغة HTTPS، لذا يكون كل طلب يُرسله مشفّرًا بصرف النظر عن الطريقة التي قُدِّمت بها الصفحة التي حمّلته. كما يرد الخادم على HTTP العادي بإعادة توجيه دائمة إلى HTTPS — وقد تحققنا من ذلك أثناء كتابة هذا المقال، للسكربت ولصورة العداد نفسها.
لذلك فإن العداد المضمَّن بمقتطف حالي لن يُخفي القفل، ولا يوجد شيء يحتاج إلى ضبط.
الحالة الوحيدة التي قد تسبب مشكلة
إذا كان أحدهم قد نسخ سكربت العداد إلى الموقع نفسه بدلًا من الربط إليه — وكانت تلك عادة شائعة، وما زالت صفحات تفعل ذلك حتى اليوم — فإن ما يعمل هناك نسخة مجمّدة من وقت حدوث ذلك. والنسخة القديمة بما يكفي تحتوي على عنوان HTTP عادي، ولا يصل إليها أي إصلاح من جانبنا مهما كان.
التحقق يستغرق دقيقتين: اعرض مصدر الصفحة وابحث عن http:// متبوعًا بنطاقنا. إن وجدت نتيجة، فيجب استبدال كود التضمين بالكامل بمقتطف حالي من صفحة الإحصائيات.
وما دام المصدر مفتوحًا: الربط بالسكربت أفضل من استضافة نسخة منه أصلًا. هناك مقال منفصل يشرح السبب، وهو ينطبق على ما هو أبعد بكثير من العدادات.