ملف robots.txt
Ahmed AbuelfatehAhmed Abuelfateh

ملف robots.txt

ماهو ملف robots.txt؟ كيفية يتم إنشاء ملف robots.txt، لماذا يتم إستخدامه؟ ما هي التوجيهات (الأوامر) الخاصة بملف robots.txt، أين يوضع (يحفظ - يرفع) ملف robots.txt، أمثلة على ملف روبوت

ما هو ملف robots.txt؟

ملف robots.txt هو عبارة عن ملف نصي يحتوي على مجموعة من التعليمات (عددها قد يكون صفر أو أكثر من التعليمات)، وهذه التعليمات هي المسئولة عن تنظيم كيفية تعامل الروبوتات مع السيرفر الخاص بك (موقعك الإلكتروني).

هذه التعليمات يتم كتابتها طبقا لـ معيار إستبعاد الروبوتات ويعرف بالإنجليزية بـ Robot Exclusion Protocol، وهو معيار وضعي، تم الإتفاق عليه عام 1994 من قبل العاملين والمهتمين بمجال الروبوتات التي تعمل من خلال الشبكة العنكبوتية.

والروبوت في هذا السياق هو عبارة عن برنامج يعمل من خلال سيرفر خاص، وأحيانا يسمى بـ الزاحف أو الجوال أو العناكب، وهي كلها معاني للكلمات الإنجليزية Robot أو Spider أو Wanderer، ووظيفة الروبوت في سياق المقالة هي فهرسة وأرشفة المواقع الإلكترونية، حيث يوجد العديد من الأنواع الأخرى التي تستخدم في مهام متعددة، ولكننا سوف نهتم بالروبوت الخاص بفهرسة وأرشفة المواقع الإلكترونية، ومن أشهر الأمثلة على هذا النوع هو زاحف شركة جوجل والمعروف بـ googlebot.

لماذا يتم إستخدام ملف robots.txt؟

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

وهنا بدأ المهتمون بعمل الروبوتات على الشبكة العنكبوتية بإنشاء معيار إستبعاد الروبوتات، وكان الهدف الأساسي منه هو تنظيم عدد زيارات الروبوت للموقع، وبالطبع هذا البروتوكول غير ملزم لأي روبوت بتنفيذ التعليمات الموجودة به، لذلك ندعوها بـ تعليمات وليست أوامر.

أما ملف robots.txt في هذه الأيام يستعمل بشكل أساسي لتحديد الصفحات أو المجلدات الموجودة بالموقع، والتي لا نرغب في أرشفتها في محركات البحث، وعادة ما تكون هذه الصفحات خاصة بإدارة ملفات الموقع.

ولا يجب إستخدام ملف robots.txt لإخفاء أي ملفات على الموقع الإلكتروني، حيث أن إستخدام ملف robots.txt للقيام بهذه المهمة هو إختيار غير موفق، حيث يوجد طرق أخرى تمكنك من حماية الملفات أو المجلدات على الموقع الإلكتروني.

إنشاء ملف robots.txt

لكي تقوم بإنشاء ملف robots.txt يمكنك أن تستخدم أي محرر لـ الأكواد البرمجية، أو يمكنك إستخدام برنامج notepad المدمج في نظام التشغيل ويندوز، ثم تقوم بإنشاء ملف جديد وتقوم بحفظه بإسم robots.txt، ويجب أن تستخدم الحروف الصغيرة، فلا يمكنك تسمية الملف بـ Robots.txt في هذه الحالة لن يتم قراءة الملف من قبل زاحف البحث، ويجب عليك حفظ الملف بإستخدام الترميز UTF-8، فهو الـ Encoding الموصى به من قبل زاحف البحث الخاص بشركة جوجل، والشكل التالي يوضح كيفية حفظ أي ملف بإستخدام الترميز utf-8 وبرنامج الـ notepad

UTF-8 file using notepad

بالطبع سوف تستبدل الخطوة الثالثة بإسم الملف وهو robots.txt.

توجيهات ملف robots.txt

طبقا لـ معيار إستبعاد الروبوتات المستخدم في كتابة توجيهات ملف robots.txt فإنه يوجد توجيهين إثنين فقط وهم التوجيه User-agent والتوجيه Disallow ولكن عمليا فإن معظم الروبوتات المملوكة لمحركات البحث الكبيرة تستخدم مجموعة إضافية من التوجيهات، بحيث يتم كتابة كل توجيه في سطر مستقل، وكل مجموعة من التوجيهات المتتالية تسمى بـ قاعدة، ويمكن أن تكتب أكثر من قاعدة في ملف robots.txt، بحيث يتم كتابة سطر فارغ ليفصل بين القواعد المختلفة، ولا يمكن كتابة سطر فارغ في منتصف القاعدة.

ولكي تتضح الصورة أكثر سوف نبدأ بالتوجيهات، فكل توجيه يتم كتابته بالتنسيق التالي:

<field>:<optional-space><value><optional-space>

حيث تقوم بإستبدال <field> بالتوجيه المناسب، ثم تقوم بكتابة علامة النقطتين (colon) :، ثم مسافه وهي إختيارية ثم يليها القيمة المناسبة للتوجيه <value> ويمكنك كتابة مسافة واحدة بعد قيمة التوجيه، والمثال التالي يوضح كيفية إستخدام هذا التنسيق

User-agent: googlebot

سوف تلاحظ كتابة الحرف الأول من التوجيه بحرف كبير، وباقي الأحرف حروف صغيرة، حيث يعتبر هذا التنسيق هو العرف المتبع في كتابة ملف robots.txt، ولذلك سوف نلتزم في هذه المقالة بالعرف المتبع في كتابة التوجيهات.

الجدول التالي يوضح التوجيهات الخاصة بملف robots.txt وإستخدامات كل توجيه:

التوجيهالإستخدام
User-agentالقيمة التي تستخدم مع هذا التوجيه هي إسم الروبوت (زاحف الويب)، وهذا التوجيه يستخدم في بداية كل قاعدة (مجموعة التوجيهات) لكي يتم تحديد الروبوت المطالب بتنفيذ هذه التوجيهات، يمكنك كتابة إسم الروبوت بحروف صغيرة أو كبيرة، ولكن المتعارف عليه أن يتم كتابة إسم الروبوت بحروف صغيرة، وفي حالة ما إذا أردت تطبيق القاعدة على كل الروبوتات التي تقوم بزيارة موقعك فيمكنك إستخدام رمز النجمة * وهو رمز خاص يستخدم لتحديد كل الروبوتات، وإذا أردت كتابة قاعدة لأكثر من روبوت فيمكنك إستخدام هذه التوجيه أي عدد من المرات مع تغيير إسم الروبوت في كل مرة.
Disallowيستخدم هذا التوجيه لمنع الروبوت من زيارة صفحة في الموقع، أو مجلد كامل، ولكي يتم تحديد مجلد كامل يجب أن تنتهي القيمة المستخدمة مع هذا التوجيه بعلامة الشرطة المائلة (slash) /، عند كتابة التوجيه User-agent في بداية القاعدة فإنه يجب إستخدام التوجيه Disallow أو التوجيه Allow على الأقل مرة واحدة بعد التوجيه User-agent.
Allowيستخدم هذا التوجيه للسماح لـ الروبوت بزيارة صفحة في الموقع، أو مجلد كامل، ولكي يتم تحديد مجلد كامل يجب أن تنتهي القيمة المستخدمة مع هذا التوجيه بعلامة الشرطة المائلة (slash) /، عند كتابة التوجيه User-agent في بداية القاعدة فإنه يجب إستخدام التوجيه Disallow أو التوجيه Allow على الأقل مرة واحدة بعد التوجيه User-agent.
Sitemapوهو توجيه غير أساسي في ملف robots.txt، وهو توجيه يستخدم مرة واحدة على الأكثر ويمكن عدم إستخدامه في الملف، وهذا التوجيه يستخدم من قبل الزواحف الخاصة بمحرك البحث جوجل لتحديد ملف خريطة الموقع.
Hostوهو توجيه غير أساسي، موصى به من قبل محرك البحث Yandex، ويستخدم في حالة إمتلاك موقعك لأكثر من إسم نطاق لنفس الموقع، وهو ما يعرف بـ Mirror، ويستخدم هذا التوجيه لتحديد إسم النطاق الذي ترغب أن يتم أرشفته من قبل الزاحف.
Crawl-delayوهو أيضا توجيه غير أساسي، ويستخدم من قبل بعض محركات البحث لتحديد المدة الزمنية التي يجب على الزاحف إنتظارها قبل قراءة أي صفحة من الموقع، وطبقا لدليل مشرفي المواقع الخاص بجوجل فإنه يفضل عدم تحديد مدة زمنية للزاحف، لأن الخوارزميات الخاصة بهم تقوم بتحديد المدة الزمنية التي لا تؤثر على أداء الموقع أثناء أرشفته.

بالإضافة إلى التوجيهات يمكنك كتابة أي تعليق بداخل ملف robots.txt وهذا التعليق يتم تجاهله عند قراءة محتويات الملف من قبل زاحف الويب، كما هو الحال في الأكواد البرمجية، ولإضافة تعليق نقوم بكتابة الرمز # وكل مل يلي هذا الرمز يعتبر تعليق، حيث يمكنك كتابة التعليق في سطر مستقل أو يمكنك كتابة التعليق بعد أي توجيه، والمثال التالي يوضح كيفية إضافة تعليق في ملف robots.txt

# تعليق في سطر مستقل
User-agent: Googlebot # تعليق بعد التوجيه

ملف robots.txt لا يدعم الـ Regular-Expressions وهي طريقة معروفة في لغات البرمجة لمطابقة النصوص، ولذلك تم الإتفاق بين معظم محركات البحث على إيجاد طريقة لمطابقة النصوص في ملف robots.txt، وهذه الطريقة غير موجودة في المعيار الخاص بإستبعاد الروبوتات، ولكن معظم الروبوتات الخاصة بمحركات البحث الشهيرة تستطيع ترجمتها، وهي بإستخدام الرمز *، فعلى سبيل المثال إذا أردنا أن نمنع زاحف الويب من قراءة أي ملف ذو إمتداد json، فيمكنك ذلك بإستخدام التعليمات التالية

# json التعليمات التالية تمنع زاحف الويب من قراءة الملفات بالإمتداد
User-agent: *
Disallow/*.json$

لاحظ في الكود السابق أننا إستخدمنا الرمز * ليعبر عن أي إسم، ثم الإمتداد الذي نرغب في منع الوصول إليه متبوعا بالرمز $، وهذه الطريقة يتم ترجمتها من قبل معظم روبوتات محركات البحث.

أين يتم حفظ ملف robots.txt؟

يجب أن يتم رفع ملف robots.txt في المجلد الرئيسي (الجذر) للموقع الإلكتروني، وذلك لأن زاحف الويب يصل إلى هذا الملف عن طريق إضافة /robots.txt بعد عنوان الموقع، ولذلك تأكد دائما من وجود هذا الملف في المجلد الرئيسي للموقع، وتأكد أيضا من حالة الأحرف في إسم الملف.

إذا كنت تستخدم مدونة بلوجر (Blogger) أو موقع مجاني من ويكس (Wix) أو مدونة مجانية من ووردبريس (Wordpress)، فغالبا أنت لا تملك صلاحية إضافة ملفات إلى مجلد الموقع الرئيسي، وبالتالي لإضافة تعليمات خاصة بملف robots.txt فإنه يتوجب عليك إستخدام الصفحات المخصصة لذلك، وعادة ما تكون مضافة في الجزء الخاص بإدارة الموقع.

3443

Discussion

  • Add new Comment
  • Captcha
  • Notify me of follow up comments via email.