كيفية استخدام HTTP Referer

الأشياء التي يمكنك القيام بها مع عملية الإحالة

إن المعلومات التي تراها مكتوبة على مواقع الويب هي فقط جزء من البيانات التي ترسلها تلك المواقع أثناء انتقالها من خادم ويب إلى متصفح الشخص والعكس. هناك أيضًا قدر لا بأس به من نقل البيانات يحدث خلف الكواليس - وإذا كنت تعرف كيفية الوصول إلى تلك البيانات ، فقد تتمكن من استخدامها بطرق مفيدة ومفيدة! سننظر في هذه المقالة في جزء محدد من البيانات يتم نقله أثناء هذه العملية - وهو HTTP referer.

ما هو الـ HTTP Referer؟

إن HTTP referer هو البيانات التي يتم تمريرها بواسطة متصفحات الويب إلى الخادم لإخبارك بالصفحة التي كان القارئ عليها قبل وصوله إلى هذه الصفحة. يمكن استخدام هذه المعلومات على موقع الويب الخاص بك لتقديم مساعدة إضافية ، وإنشاء عروض خاصة للمستخدمين المستهدفين ، وإعادة توجيه العملاء إلى الصفحات والمحتوى الملائم ، أو حتى منع الزوار من الوصول إلى موقعك. يمكنك أيضًا استخدام لغات البرمجة النصية مثل JavaScript أو PHP أو ASP لقراءة وتقييم معلومات المُحيل.

جمع معلومات المحلل مع PHP ، جافا سكريبت و ASP

إذا كيف يمكنك جمع بيانات المحول HTTP هذا؟ إليك بعض الطرق التي يمكنك استخدامها:

تخزن PHP معلومات المُحيل في متغير نظام يُسمى HTTP_REFERER. لعرض المُحيل على صفحة PHP ، يمكنك كتابة:

if (isset ($ _ SERVER ['HTTP_REFERER'])) {
صدى $ _SERVER ['HTTP_REFERER']؛
}

هذا يتحقق من أن المتغير له قيمة ثم يطبعه على الشاشة. بدلاً من صدى $ _SERVER ['HTTP_REFERER']؛ يمكنك وضع خطوط النص البرمجي للتحقق من العديد من الإحالات.

تستخدم جافا سكريبت DOM لقراءة المُحيل. تمامًا مثل PHP ، يجب عليك التحقق للتأكد من أن المُحيل لديه قيمة. ومع ذلك ، إذا كنت تريد معالجة هذه القيمة ، يجب عليك تعيينها على متغير أولاً. في ما يلي كيفية عرض المُحيل على صفحتك باستخدام جافا سكريبت. لاحظ أن DOM يستخدم الإملاء البديل للإحالة ، مع إضافة "r" إضافية هناك:

if (document.referrer) {
var myReferer = document.referrer ،
دوكمنت (myReferer)؛
}

ثم يمكنك استخدام المحول في البرامج النصية مع متغير myReferer .

يقوم ASP ، مثل PHP ، بتعيين المرجع في متغير النظام. يمكنك بعد ذلك جمع هذه المعلومات مثل:

if (Request.ServerVariables ("HTTP_REFERER")) {
Dim myReferer = Request.ServerVariables ("HTTP_REFERER")
Response.Write (myReferer)
}

يمكنك استخدام متغير myReferer لتعديل النصوص الخاصة بك حسب الحاجة.

بمجرد الحصول على المحكم ، ما الذي يمكنك القيام به؟

لذا فإن الحصول على البيانات هو الخطوة 1. كيف ستعتمد على ذلك على موقعك المحدد. الخطوة التالية ، بالطبع ، هي إيجاد طرق لاستخدام هذه المعلومات.

بعد الحصول على بيانات المُحيل ، يمكنك استخدامها في برمجة مواقع الويب الخاصة بك بعدد من الطرق. شيء واحد بسيط يمكنك القيام به هو مجرد نشر ما تعتقد أن الزائر جاء منه. باعتراف الجميع ، هذا أمر ممل ، ولكن إذا كنت بحاجة إلى إجراء بعض الاختبارات ، فقد يكون ذلك نقطة دخول جيدة للعمل بها.

ما هو المثال الأكثر إثارة للاهتمام هو عندما تستخدم المُحيل لعرض معلومات مختلفة بناءً على مصدره. على سبيل المثال ، يمكنك القيام بما يلي:

حظر المستخدمين باستخدام .htaccess بواسطة المرجع

من وجهة نظر الأمان ، إذا كنت تواجه عددًا كبيرًا من الرسائل غير المرغوب فيها على موقعك من نطاق معين ، فيمكن أن يساعد ذلك في حظر هذا النطاق ببساطة من موقعك. إذا كنت تستخدم Apache مع mod_rewrite ، يمكنك حظرها باستخدام بضعة أسطر. أضف ما يلي إلى ملف htaccess الخاص بك:

RewriteEngine on
# خيارات + FollowSymlinks
RewriteCond٪ {HTTP_REFERER} spammer \ .com [NC]
RewriteRule. * - [F]

تذكر تغيير كلمة spammer \ .com إلى النطاق الذي تريد حظره. تذكر وضع \ in أمام أي فترات في المجال.

لا تعتمد على المرجعي

تذكر أنه من الممكن انتحال المحيل ، لذلك يجب ألا تستخدم المُحيل وحده للأمن. يمكنك استخدامه كإضافة لأمانك الآخر ، ولكن إذا كان يجب الوصول إلى صفحة من قبل أشخاص محددين فقط ، فعليك تعيين كلمة مرور عليها باستخدام htaccess .