تشرح هذه المقالة بإيجاز أصل ملفات تعريف الارتباط وخصائصها الأساسية، وتوفر خلفية تقنية لتعلم كيفية تعيين ملفات تعريف الارتباط في PHP، وتوصي مبتدئي PHP بقراءتها.
قبل أن نتعلم كيفية تعيين ملفات تعريف الارتباط في PHP، دعونا نفهم أولاً تقنية ملفات تعريف الارتباط.
(1) مقدمة إلى تقنية ملفات تعريف الارتباط
في تاريخ تطور تكنولوجيا الويب، يعد ظهور تقنية ملفات تعريف الارتباط تغييرًا كبيرًا. أولاً، قدمت Netscape تقنية ملفات تعريف الارتباط في متصفح Netscape Navigator الخاص بها. ومنذ ذلك الحين، بدأت رابطة شبكة الويب العالمية في دعم معيار ملفات تعريف الارتباط. لاحقًا، بعد الترويج القوي من قبل Microsoft (نظرًا لأن تقنية ASP التي يستخدمها خادم الويب IIS الخاص بشركة Microsoft تستخدم تقنية ملفات تعريف الارتباط بكثافة)، تم دعم تقنية ملفات تعريف الارتباط بالكامل في متصفح Microsoft Internet Explorer. حتى الآن، تدعم الغالبية العظمى من المتصفحات تقنية ملفات تعريف الارتباط، أو على الأقل متوافقة معها
استخدام التكنولوجيا.
1) ما هي ملفات تعريف الارتباط؟
وفقًا للتعريف الوارد في وثائق Netscape الرسمية، تعد ملفات تعريف الارتباط وسيلة يستخدمها الخادم أو البرنامج النصي للاحتفاظ بالمعلومات الموجودة على محطة عمل العميل بموجب بروتوكول HTTP. ملفات تعريف الارتباط هي ملفات نصية صغيرة يتم حفظها على متصفح المستخدم بواسطة خادم الويب، والتي يمكن أن تحتوي على معلومات حول المستخدم (مثل رقم التعريف أو كلمة المرور أو كيفية قيام المستخدم بالشراء على موقع الويب أو عدد المرات التي يزور فيها المستخدم الموقع). عندما يتصل المستخدم بالخادم، يمكن لموقع الويب الوصول إلى معلومات ملف تعريف الارتباط.
بعبارات عامة، تستخدم المتصفحات ملفًا محدودًا واحدًا أو أكثر لدعم ملفات تعريف الارتباط. تسمى هذه الملفات ملفات تعريف الارتباط على الأجهزة التي تستخدم أنظمة تشغيل Windows وملفات تعريف الارتباط السحرية على أجهزة Macintosh. وتستخدم مواقع الويب هذه الملفات لتخزين بيانات ملفات تعريف الارتباط عليها.
يمكن لمواقع الويب إدراج معلومات في ملفات تعريف الارتباط هذه، مما قد يكون له آثار جانبية على بعض مستخدمي الإنترنت. يعتقد بعض المستخدمين أن هذا يؤدي إلى انتهاك الخصوصية الشخصية، ويعتقد بعض الأشخاص أن ملفات تعريف الارتباط تعد انتهاكًا للمساحة الشخصية ويمكن أن تسبب مخاطر أمنية لأجهزة الكمبيوتر الخاصة بالمستخدمين.
في الوقت الحالي، بعض ملفات تعريف الارتباط مؤقتة والبعض الآخر مستمر. يتم حفظ ملفات تعريف الارتباط المؤقتة على المتصفح لفترة زمنية محددة فقط، وبمجرد انتهاء الفترة الزمنية المحددة، سيتم مسح ملف تعريف الارتباط بواسطة النظام. على سبيل المثال، في PHP، يتم استخدام ملفات تعريف الارتباط لتتبع تقدم المستخدم حتى يغادر المستخدم موقع الويب. يتم حفظ ملف تعريف الارتباط الدائم في ملف تعريف الارتباط الخاص بالمستخدم ولا يزال من الممكن استدعاؤه في المرة التالية التي يعود فيها المستخدم.
حفظ ملفات تعريف الارتباط في ملف تعريف الارتباط، سوف يذهب بعض المستخدمين إلى أبعد من ذلك ويعتقدون أن هذا سيؤدي إلى مشاكل كبيرة. السبب الرئيسي هو أن بعض المستخدمين يشعرون بالقلق من أن ملفات تعريف الارتباط ستتتبع عادات تصفح الإنترنت للمستخدمين، مثل أنواع المواقع التي يرغب المستخدمون في زيارتها والأنشطة التي يرغبون في المشاركة فيها. وأخشى أنه بمجرد وقوع هذا النوع من المعلومات الشخصية في أيدي بعض الأشخاص ذوي الدوافع الخفية، قد يصبح الفرد هدفًا للكثير من الإعلانات المهملة، أو حتى يتعرض لأضرار غير متوقعة. ومع ذلك، لن يحدث هذا القلق على الإطلاق، لأن المستخدمين خارج الموقع لا يمكنهم الحصول على معلومات ملفات تعريف الارتباط عبر الموقع. لذا فمن المستحيل استخدام ملفات تعريف الارتباط لهذا الغرض. ومع ذلك، نظرًا لسوء فهم بعض المستخدمين و"الشائعات الكاذبة"، ليس لدى بعض مطوري المتصفحات خيار سوى تقديم ردود مألوفة (على سبيل المثال، يوفر كل من Netscape Navigator 4.0 وInternet Explorer 3.0 خيار حظر ملفات تعريف الارتباط).
نتيجة انتظار تقنية ملفات تعريف الارتباط لفترة طويلة هي أنها تجبر العديد من مطوري المتصفحات على توفير تحكم مرن في ملفات تعريف الارتباط في متصفحاتهم. على سبيل المثال، يتعامل المتصفحان الرئيسيان الحاليان، Netscape Navigator وInternet Explorer، مع ملفات تعريف الارتباط بهذه الطريقة
: لا يستطيع Netscape Navigator 4.0 قبول تحذيرات ملفات تعريف الارتباط فحسب، بل يمكنه أيضًا حظر ملفات تعريف الارتباط؛ ويمكن لـ Internet Explorer 3.0 أيضًا حظر ملفات تعريف الارتباط، ولكن في Internet Explorer 4.0 يمكنه فقط قبول التحذيرات دون توفير خيار الحظر
أضافت الإصدارات المحدثة بعد Explorer 4.0 خيار حظر ملفات تعريف الارتباط.
بالإضافة إلى ذلك، يمكن للعديد من أحدث التقنيات حظر ملفات تعريف الارتباط على المتصفحات التي لا يمكنها حظر ملفات تعريف الارتباط. على سبيل المثال، يمكنك الحد من استخدام ملفات تعريف الارتباط عن طريق تعيين ملفات تعريف الارتباط على أنواع مختلفة. ومع ذلك، لسوء الحظ، إذا كنت تريد حظر ملفات تعريف الارتباط بشكل كامل، فسوف ترفض بالتأكيد العديد من صفحات الموقع. نظرًا لأن العديد من مطوري مواقع الويب وقعوا اليوم في حب الوظائف القوية لتقنية ملفات تعريف الارتباط، على سبيل المثال، لا يمكن فصل استخدام كائنات الجلسة عن دعم ملفات تعريف الارتباط.
على الرغم من أنه لا يزال هناك بعض مستخدمي الإنترنت اليوم الذين ما زالوا يتجادلون حول ملفات تعريف الارتباط، إلا أن الغالبية العظمى من مستخدمي الإنترنت ما زالوا يميلون إلى قبول ملفات تعريف الارتباط. لذلك، يمكننا استخدام تقنية ملفات تعريف الارتباط بأمان لتطوير صفحات الويب الخاصة بنا.
2) كيف تعمل ملفات تعريف الارتباط؟
لفهم ملفات تعريف الارتباط، من الضروري معرفة كيفية عملها. بشكل عام، يتم إرجاع ملفات تعريف الارتباط من الخادم إلى المتصفح من خلال رؤوس HTTP. أولاً، يستخدم الخادم رأس Set-Cookie في الاستجابة لإنشاء ملف تعريف الارتباط، ثم يقوم المتصفح بتضمين ملف تعريف الارتباط الذي تم إنشاؤه في طلبه من خلال رأس ملف تعريف الارتباط، ويعيده إلى الخادم، وبالتالي يكمل وسيطة المتصفح.
على سبيل المثال، قمنا بإنشاء ملف تعريف ارتباط باسم تسجيل الدخول لاحتواء معلومات الزائر. عند إنشاء ملف تعريف الارتباط، يكون رأس جانب الخادم كما هو موضح أدناه. ومن المفترض أن يكون اسم الزائر المسجل هو "مايكل جوردان"، وأن ملف تعريف الارتباط الذي تم إنشاؤه هو أيضًا السمات مثل المسار،
تم تحديد المجال وانتهاء الصلاحية وما إلى ذلك.
Set-Cookie:login=Michael Jordan;path=/;domain=msn.com;
تنتهي = الاثنين، 01 مارس 99 00:00:01 بتوقيت جرينتش
سيضيف الرأس أعلاه تلقائيًا سجلاً إلى ملف تعريف الارتباط لجهاز الكمبيوتر المتصفح. يقوم المتصفح بتعيين قيمة ملف تعريف الارتباط بالاسم المتغير "تسجيل الدخول" إلى "مايكل جوردون". لاحظ أنه أثناء عملية التسليم الفعلية، تمر قيمة ملف تعريف الارتباط هذا عبر طريقة URLEncode.
عملية ترميز URL. بعد حفظ رأس HTTP الذي يحتوي على قيمة ملف تعريف الارتباط في ملف تعريف الارتباط الخاص بالمتصفح، يقوم الرأس بإعلام المتصفح بإعادة ملف تعريف الارتباط إلى الخادم عن طريق تجاهل المسار من خلال الطلب، وإكمال عملية مصادقة المتصفح.
بالإضافة إلى ذلك، نستخدم بعض سمات ملف تعريف الارتباط للحد من استخدام ملف تعريف الارتباط. على سبيل المثال، يمكن لسمة المجال أن تحد من إرسال ملفات تعريف الارتباط على جانب المتصفح. في المثال أعلاه، يمكن إرسال ملف تعريف الارتباط فقط إلى الخادم المعين، ولن ينتقل أبدًا إلى مواقع الويب الأخرى مثل www.phpq.net . تحدد سمة انتهاء الصلاحية الفترة الزمنية التي يتم حفظ ملف تعريف الارتباط خلالها. على سبيل المثال، يتم حفظ ملف تعريف الارتباط أعلاه على المتصفح لمدة ثانية واحدة فقط في 1 مارس 1999. وبطبيعة الحال، إذا كان هناك عدد كبير جدًا من ملفات تعريف الارتباط على المتصفح وتجاوز النطاق الذي يسمح به النظام، فسيقوم المتصفح بحذفها تلقائيًا. أما بالنسبة للسمة Path، فسيتم استخدامها لتحديد مسار الدليل الذي سيتم إرسال ملف تعريف الارتباط إلى الخادم.
ملاحظة: بعد أن يقوم المتصفح بإنشاء ملف تعريف الارتباط، سيحمل كل طلب لهذا الموقع ملف تعريف الارتباط هذا في الرأس، ومع ذلك، لن يتم إرسال ملفات تعريف الارتباط للطلبات من مواقع الويب الأخرى أبدًا. وسيستمر المتصفح في إرسالها حتى انتهاء صلاحية ملف تعريف الارتباط. تعد تقنية ملفات تعريف الارتباط تقنية مثيرة للجدل للغاية منذ بدايتها، وأصبحت محور نقاش لغالبية مستخدمي الإنترنت ومطوري الويب. بعض مستخدمي الإنترنت، بما في ذلك بعض كبار خبراء الويب، غير راضين عن إنشائها والترويج لها، وهذا ليس لأن وظيفة تقنية ملفات تعريف الارتباط ضعيفة للغاية أو لأسباب فنية أخرى، ولكن ببساطة لأنهم يشعرون أن استخدام ملفات تعريف الارتباط يسبب الضرر. لخصوصية مستخدمي الشبكة. لأن ملف تعريف الارتباط هو ملف نصي صغير يتم حفظه على متصفح المستخدم بواسطة خادم الويب، فهو يحتوي على معلومات حول المستخدم (مثل رقم التعريف أو كلمة المرور أو طريقة شراء المستخدم على موقع الويب أو عدد المرات التي قام فيها المستخدم يزور الموقع). إذن ما هي تقنية ملفات تعريف الارتباط بالضبط؟ وهل يضر حقاً بالخصوصية الشخصية لمستخدمي الإنترنت؟ بعد قراءة المعلومات المذكورة أعلاه، يجب أن يكون لديك إجراء في الاعتبار.