الخلاصة
- نص RFC 1945 الصادر في مايو 1996 على إمكان إرسال URI الصفحة التي وُجد فيها الرابط ضمن حقل
Refererإلى الخادم المقصود. ذكر قوائم الروابط العكسية والسجلات وإصلاح الروابط، ونبّه في القسم نفسه إلى إمكان كشف عنوان مصدر خاص. - أبقى RFC 2068 الصادر في يناير 1997 الحقل، وقال صراحة إن تهجئة
Refererخاطئة بالإنجليزية. العنوان المكتوب مباشرة في المتصفح لا يملك صفحة مُحيلة، والجزء بعد علامة التجزئة في URI لا يدخل القيمة. وشرح قسم الأمن خطر ظهور URI وثيقة خاصة. - حددت توصية W3C المرشحة بتاريخ 26 يناير 2017 سياسات ترسل العنوان كله، أو أصل الموقع وحده، أو تمتنع عن إرسال مرجع. الوثيقة تسجل تصميم القواعد في تاريخها؛ ولا تعدّ المتصفحات التي نفذتها.
أراد الخادم إيصالاً بالمصدر
في RFC 1945، النص الأصلي لـ HTTP/1.0 المنشور في مايو 1996، وجد الخادم الذي يستقبل الطلب معلومة نافعة: يستطيع المتصفح أن يضع URI الصفحة التي أخذ منها رابط الوجهة في حقل Referer. يمكن للخادم أن يبني قائمة بالمواقع التي تشير إليه، وأن يحتفظ بسجل، وأن يحسن بعض استخدامات التخزين المؤقت، وأن يلاحق الروابط القديمة أو المكتوبة خطأ. تلك استخدامات سردها المعيار نفسه.
إذا نقلت مكتبة رقمية وثيقة إلى عنوان جديد، ظلت صفحات أخرى تشير إلى العنوان القديم. يحمل الطلب القادم من إحدى تلك الصفحات اسمها، فيعرف مشغل المكتبة أين بقي الرابط المعطوب. لا يحتاج إلى امتلاك الموقع الآخر أو التحكم فيه. كانت زيارة القارئ ترسم للخادم قطعة صغيرة من خريطة الروابط العكسية في شبكة لا يديرها مكتب مركزي.
لم يمنح النص كل طلب صفحة سابقة وهمية. إذا كتب المستخدم العنوان في لوحة المفاتيح، فلا توجد صفحة ذات URI استُمد منها الرابط؛ حينها لا ينبغي إرسال Referer. وحظر إدراج جزء URI الواقع بعد علامة التجزئة. الدخول بنقرة والخروج من شريط العنوان عمليتان مختلفتان، ولا يحق لسجل الوجهة أن يخلط بينهما.
جاءت الكلفة في القسم نفسه الذي شرح المنفعة. مصدر الرابط قد يكون معلومات خاصة، أو قد يكشف عنوانه موضع مصدر خاص. أوصى واضعو RFC بقوة أن يختار المستخدم إرسال الحقل أو تركه، وضربوا مثال مفتاح في المتصفح للتنقل علناً أو بقدر من الإخفاء. لم تنشأ مسألة الخصوصية بعد سنوات من استخدام بريء؛ وُضعت بجانب قائمة الصيانة منذ 1996.
الخطأ الإملائي بقي في الخدمة
أشار RFC 2068 الخاص بـ HTTP/1.1، الصادر في يناير 1997 إلى طرفة صغيرة: Referer تهجئة خاطئة لكلمة «referrer». لم يغير ذلك اسم الحقل المتداول بين المتصفح والخادم. بقيت به قوائم الروابط العكسية والسجلات وتصحيح العناوين، وبقي منع إرسال مصدر متخيّل عند كتابة العنوان مباشرة ومنع جزء URI المجزأ.
يمكن الضحك على الحرف المفقود. غير أن القرار الأثقل كان نقل عنوان صفحة من موقع إلى خادم موقع آخر. لدى المتلقي سبب مفهوم لمعرفة أصل الزيارة، خاصة عند إصلاح الروابط. معرفة اسم المؤسسة التي أرسلت الزائر شيء، ومعرفة صفحة أحد أعضائها الدقيقة شيء آخر. قد يخدم الأول العمل، بينما يعطي الثاني تفاصيل لا يحتاجها الخادم.
شرح قسم الأمن في RFC 2068 أن Referer يفيد في دراسة أنماط القراءة ورسم الروابط العكسية. وحتى بعد فصل المعلومات الشخصية المباشرة، قد يفضح URI وثيقة خاصة. مسار ملف شخصي، أو اسم مساحة عمل داخلية، أو معامل جلسة في العنوان، يمكن أن يكشف سياقاً حساساً بمفرده. لا يتطلب التسرب أن يُكتب السر في نص الرابط الظاهر؛ يكفي أن يحمله رأس الطلب.
تحدد وثيقتا RFC وظيفة الحقل وحدودهما، ولا تقدمان إحصاءً بما أرسلته كل المتصفحات فعلاً آنذاك. يكفي ذلك لتحديد موضع النزاع: يحتاج خادم الوجهة إلى دليل يعود به إلى رابط معطوب، وقد لا يريد الموقع المُحيل أن تصبح صفحة خاصة جزءاً من سجل شخص آخر.
اسم المبنى أم رقم الغرفة؟
العنوان الكامل يتجاوز اسم النطاق. قد يحدد المسار صفحة شخص أو غرفة عمل، وقد يحمل الاستعلام مُعرّف جلسة. عندما يصل كل ذلك إلى خادم آخر بوصفه Referer، يعرف المتلقي أكثر من اسم الموقع الذي جاء منه القارئ: يعرف الغرفة التي غادرها. ضغط القارئ رابطاً لفتح مادة جديدة؛ وأرسل المتصفح معه سطراً إضافياً عن مكانه السابق.
يمكن للخادم المتلقي تخزين السطر في سجل دائم. أما صاحب صفحة الانطلاق فهو الأعرف بمعنى مسارات موقعه، وبأي عنوان يحدد شخصاً أو يفتح مورداً. المفتاح الذي تصوره RFC سنة 1996 يمنح المستخدم قراراً عاماً. وتسمح سياسة تصدر عن الصفحة نفسها بتحديد أدق يناسب حساسية العنوان.
بين البدائل فروق عملية. العنوان الكامل يبين موضع الرابط الذي يحتاج إلى إصلاح. أصل الموقع وحده، أي البروتوكول والمضيف والمنفذ، يحدد المؤسسة المُرسلة من دون نسخ المسار أو الاستعلام. عدم الإرسال يحجب حتى اسم الموقع. كل نقص في تفاصيل دفتر الخادم يقابله نقص في المعلومات التي غادرت الصفحة الأصلية.
صار للصفحة حق ضبط العنوان الخارج
افتتحت توصية W3C المرشحة «Referrer Policy» المؤرخة 26 يناير 2017 بمثال محدد. صفحة ملف شخصي في موقع اجتماعي تربط بموقع فرقة موسيقية. يمكن للفرقة أن تعرف أن الزيارة جاءت من الموقع الاجتماعي، من دون أن تحصل على URL الملف الذي يحدد صاحبه. وذكرت الوثيقة تطبيقاً يحمل عنوانه مُعرّف جلسة أو صلاحية وصول. هنا قد يكون العنوان نفسه قريباً من اعتماد يُستخدم للدخول.
عرّفت المسودة درجات للإفصاح. no-referrer يحذف الحقل. same-origin يرسل العنوان الكامل داخل الأصل نفسه، ولا يرسل شيئاً إلى أصل آخر. origin يرسل البروتوكول والمضيف والمنفذ فقط، من دون المسار ومعاملات البحث؛ ويضيف strict-origin قيداً عند الانتقال من سياق محمي إلى وجهة أقل ثقة. تخلط خيارات أخرى بين قواعد للطلبات الداخلية والخارجية. صار السؤال: أي جزء من العنوان يصل إلى أي جهة؟
يمكن لصاحب الصفحة إعلان قراره في رأس الاستجابة Referrer-Policy، أو عنصر meta، أو خاصية لبعض العناصر، أو علاقة noreferrer في الرابط. كُتب اسم السياسة الجديدة كتابة صحيحة، فيما بقي اسم رأس الطلب القديم Referer. أصلح المعيار الجديد اللغة في التعليمات، وترك الاسم الذي تعلّمته الأنظمة المبكرة وهي تعمل.
كانت وثيقة 2017 توصية مرشحة في تاريخها، وتصف سلوك كل خيار. تحديد موعد وصول كل خيار إلى متصفح بعينه يحتاج إلى سجلات تنفيذ مؤرخة. لكنها تبين انتقال مركز القرار: الصفحة التي تعرف معنى عنوانها تستطيع أن تحدد للمتصفح مقدار ما يحمله إلى الخارج.
الرابط العكسي ليس مجانياً
يستفيد الخادم المستقبل من معرفة المصدر: يصلح الاستشهادات المعطوبة، ويعرف كيف عثر الناس على وثيقته. وصف RFC سنة 1996 هذه الفائدة بدقة، ووضع بجانبها تحذير الصفحة الخاصة. حين يكون عنوان العودة لملف غير علني، يصبح إيصال الصيانة نسخة من عنوان لم يقصد صاحبه نشره لخادم آخر.
تجعل السياسة اللاحقة القرار عند المصدر. يمكن للموقع أن يكشف اسمه ويحجب مسار الملف الشخصي، أو أن يختار الصمت. يفقد دفتر الروابط لدى الوجهة بعض الدقة. هذا هو ثمن تقليل الإفصاح تحديداً. حاجة مشغل الخادم إلى صيانة صفحته لا تمنحه تلقائياً عنوان كل غرفة غادرها زواره.
بقي الخطأ في تهجئة Referer. الأهم أن سؤالين انفصلا: من أي موقع جاءت الزيارة؟ ومن أي صفحة خاصة داخل ذلك الموقع خرج القارئ؟ كانت الإجابتان ملفوفتين في سطر واحد؛ وصار بالإمكان تقسيمهما.
المصادر
- RFC 1945، HTTP/1.0، مايو 1996: تعريف الحقل واستخدامات الصيانة والتحذير من المصدر الخاص.
- RFC 2068، HTTP/1.1، يناير 1997: الاعتراف بخطأ التهجئة وشرح خطر كشف URI خاص.
- توصية W3C المرشحة «Referrer Policy»، 26 يناير 2017: سياسات العنوان الكامل وأصل الموقع وعدم الإرسال.
إحاطة الأعضاء
سياق أعمق للملف الشخصي
سجّل الدخول بمستوى العضوية المناسب لفتح الإحاطة الكاملة وملاحظات المصادر.
للدائرة الاستراتيجية فقط
الدائرة الاستراتيجية
مفتوح لجميع القراء. افتح إحاطات الملف الشخصي بعد الانضمام وتسجيل الدخول.
انضم إلى الدائرة الاستراتيجيةلأعضاء تحالف القيادات فقط
تحالف القيادات
لأصحاب الأصول الفكرية المؤهلين وللإدارة؛ سجّل الدخول للوصول إلى إحاطات التحالف.
انضم إلى تحالف القيادات





