ملفات الروبوت

إستخدام ملف robots.txt في منع الصفحات



 

 

ملفات الروبوت

 

 

 

 

 

يقيد ملف robots.txt الدخول إلى موقعك من خلال وحدات روبوت محركات البحث التي تزحف إلى الويب.

 

وبرامج التتبع هذه تلقائية، وقبل أن تصل إلى صفحات أحد المواقع، تتحقق أولاً من وجود ملف robots.txt الذي يمنعها من الوصول إلى صفحات محددة.

 

(جميع برامج الروبوت حسنة السمعة تحترم الأوامر المضمنة في ملف robots.txt، إلا أن البعض قد يفسرها على نحو مختلف. ومع ذلك، ليس ملف robots.txt ملزمًا، وقد يتجاهله بعض مرسلي الرسائل غير المرغوب فيها ومثيري المتاعب الآخرين.

 

ولهذا السبب، ننصح باستخدام كلمة مرور لحماية المعلومات السرية.)

 

لمعرفة عناوين URL التي حظر Google الزحف إليها، يمكنك الانتقال إلى صفحةعناوين URL المحظورة في القسم Health في أدوات مشرفي المواقع.

 

ولا يلزم ملف robots.txt إلا إذا كان موقعك يتضمن محتوى لا تريد أن تفهرسه محركات البحث.

 

أما إذا أردت أن تفهرس محركات البحث جميع محتوى موقعك، فلا يلزمك وجود ملف robots.txt (حتى ولو كان فارغًا).

 

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

 

ونتيجة لذلك، قد يظهر عنوان URL للصفحة وربما المعلومات الأخرى المتاحة بشكل عام مثل النص الأساسي لروابط الموقع، أو العنوان من مشروع الدليل المفتوح (www.dmoz.org)، ضمن نتائج بحث Google.

 

لاستخدام ملف robots.txt، يلزم الدخول إلى جذر النطاق (وإن لم تكن متأكدًا من ذلك، فراجع الأمر مع مضيف الويب).

 

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

 

يمكن الاطلاع على وصف معيار علامة meta لمنع الفهرسة على http://www.robotstxt.org/meta.html. وتكون هذه الطريقة مفيدة في حالة عدم امتلاكك حق وصول جذر إلى خادمك؛ حيث يتيح لك ذلك الأمر التحكم في الوصول إلى موقعك على أساس صفحة بصفحة.

ولمنع كل برامج الروبوت من فهرسة إحدى الصفحات في موقعك، ضع علامة meta التالية في قسم <head> من صفحتك:

<meta name="robots" content="noindex">

وللسماح لبرامج الروبوت الأخرى بفهرسة صفحة في موقعك، مع منع برامج الروبوت التابعة لـ Google فقط من فهرسة الصفحة:

<meta name="googlebot" content="noindex">

وعند ظهور علامة meta لمنع الفهرسة في إحدى الصفحات، تستبعد Google هذه الصفحة من نتائج البحث نهائيًا، حتى وإن كانت هناك صفحات أخرى ترتبط بها.

 

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

 

لاحظ أنه نظرًا لضرورة الزحف إلى صفحتك بحثًا عن علامة meta لمنع الفهرسة، فهناك احتمال ضعيف ألا يجد Googlebot‏ علامة meta لمنع الفهرسة ويضعها في الاعتبار.

 

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

 

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

 

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

 

 

طريقة إنشاء ملف robots.txt

 

يعتمد أبسط ملف robots.txt على قاعدتين:

  • User-Agent: برنامج الروبوت الذي تنطبق عليه القاعدة التالية
  • Disallow: عنوان URL الذي تريد حجبه

يتم اعتبار هذين السطرين إدخالاً واحدًا في الملف. يمكنك تضمين أي عدد تريده من الإدخالات. كما يمكنك تضمين سطور Disallow وUser-Agent متعددة في الإدخال الواحد.

 

كل قسم في ملف robots.txt مستقل بذاته، ولا يعتمد على الأقسام السابقة الأخرى. على سبيل المثال:

User-agent: *
Disallow: /folder1/

User-Agent: Googlebot
Disallow: /folder2/

في هذا المثال، سيتم فقط عدم السماح بزحف Googlebot إلى عناوين URL المطابقة لـ /folder2/.

 

وكلاء المستخدم وبرامج التتبع

وكيل المستخدم هو برنامج روبوت معين لمحرك البحث. ويندرج ضمن قاعدة بيانات برامج روبوت الويب العديد من برامج التتبع الشائعة. يمكنك تعيين إدخال لتطبيقه على برنامج تتبع محدد (بإدراج اسم برنامج التتبع) أو يمكنك تعيينه ليتم تطبيقه على جميع برامج التتبع (بإدراج علامة النجمة *). ويظهر الإدخال المطبق على جميع برامج التتبع بهذا الشكل:

User-agent: *

تستخدم Google العديد من برامج التتبع (وكلاء المستخدم) المختلفة. وبرنامج التتبع الذي نستخدمه لبحث الويب هو Googlebot. وتعمل برامج التتبع الأخرى التي نستخدمها، مثل Googlebot-Mobile وGooglebot-Image وفقًا للقواعد التي يتم إعدادها لبرنامج Googlebot، ولكن يمكنك أيضًا إعداد قواعد خاصة لهذه البرامج المحددة.

حظر وكلاء المستخدم

يعرض السطر Disallow الصفحات التي تريد حجبها. ويمكنك إدراج عنوان URL أو نمط محدد. ويجب أن يبدأ الإدخال بشرطة أمامية مائلة (/).

 

  • لحجب الموقع بالكامل، استخدم شرطة أمامية مائلة.
    Disallow: /
  • لحجب دليل وكل ما يحتويه، اتبع اسم الدليل بشرطة أمامية مائلة.
    Disallow: /junk-directory/
  • لحجب صفحة، أدرج اسم الصفحة.
    Disallow: /private_file.html
  • لإزالة صورة معينة من صور Google، أضف ما يلي:
    User-agent: Googlebot-Image
    Disallow: /images/dogs.jpg
  • لإزالة جميع الصور على موقعك من صور Google:
    User-agent: Googlebot-Image
    Disallow: /
  • لحجب نوع معين من الملفات (على سبيل المثال، ‎.gif)، استخدم ما يلي:
    User-agent: Googlebot
    Disallow: /*.gif$
  • لمنع الزحف إلى صفحات موقعك مع الاستمرار في عرض إعلانات AdSense على تلك الصفحات، امنع جميع برامج التتبع باستثناء Mediapartners-Google. وبذلك لا يتم عرض الصفحات ضمن نتائج البحث، ولكن يتم السماح لبرنامج الروبوت Mediapartners-Google بتحليل الصفحات لتحديد الإعلانات التي سيتم عرضها عليها. ولا يشارك برنامج روبوت Googlebot-MediaPartners الصفحات مع غيره من وكلاء المستخدمين من Google. على سبيل المثال:
    User-agent: *
    Disallow: /
    
    User-agent: Mediapartners-Google
    Allow: /

يرجى ملاحظة أن الأوامر تتأثر بحالة الأحرف. على سبيل المثال، Disallow: /junk_file.asp يمنع http://www.example.com/junk_file.asp، إلا أنه يسمح بـ http://www.example.com/Junk_file.asp. يتجاهل Googlebot المسافات الخالية (بالأخص السطور الخالية) وكذلك الأوامر غير المعروفة في ملف robots.txt.

يسمح Googlebot بإرسال ملفات Sitemap من خلال ملف robots.txt.

تطابق النمط

يراعي Googlebot (وليست جميع محركات البحث الأخرى) بعض تطابقات الأنماط.

  • لمطابقة سلسلة من الرموز، استخدم علامة النجمة (*). على سبيل المثال، لمنع الدخول إلى جميع الأدلة الفرعية التي تبدأ بكلمة private:
    User-agent: Googlebot
    Disallow: /private*/
  • لمنع الدخول إلى جميع عناوين URL التي تتضمن علامة استفهام (?) (وبتعبير أدق، أي عنوان URL يبدأ باسم نطاقك, متبوعًا بأية سلسلة, متبوعة بعلامة استفهام, متبوعة بأية سلسلة):
    User-agent: Googlebot
    Disallow: /*?
  • لتحديد تطابق نهاية عنوان URL، استخدم الرمز $. على سبيل المثال، لحجب أية عناوين URL تنتهي بـ .xls:
    User-agent: Googlebot 
    Disallow: /*.xls$

    يمكنك استخدام هذا النوع من تطابق النمط مع الأمر Allow. على سبيل المثال، إذا كانت علامة ؟ تشير إلى معرِّف جلسة، فقد ترغب في استبعاد جميع عناوين URL التي تحتوي عليها لضمان عدم زحف Googlebot إلى صفحات مُكرَّرة. ولكن قد تكون عناوين URL التي تنتهي بعلامة ؟ إصدارًا للصفحة التي ترغب في تضمينها. ففي مثل هذه الحالة، يمكنك تعيين ملف robots.txt كما يلي:

    User-agent: *
    Allow: /*?$
    Disallow: /*?

    وسيمنع الأمر Disallow: / *? أي عنوان URL يتضمن علامة ؟ (وبتعبير أدق، سيمنع أي عنوان URL يبدأ باسم نطاقك، متبوعًا بأية سلسلة، متبوعة بعلامة استفهام، متبوعة بأية سلسلة).

    وسيسمح الأمر Allow: /*?$ بأي عنوان URL ينتهي بعلامة ؟ (وبتعبير أدق، سيسمح لأي عنوان URL يبدأ باسم نطاقك، متبوعًا بسلسلة، متبوعة بعلامة ؟، بدون أية أحرف بعد علامة ؟).

احفظ ملف robots.txt عن طريق تنزيل الملف أو نسخ المحتويات إلى ملف نصي وحفظه كملف robots.txt. احفظ الملف في دليل أعلى مستوى لموقعك. يجب وضع ملف “robots.txt” في جذر النطاق بنفس هذا الاسم. ويُعد وضع ملف robots.txt في دليل فرعي أمرًا غير صالح، وذلك لأن برامج الزحف تبحث عن هذا الملف في جذر النطاق فقط. فعلى سبيل المثال، يعتبر http://www.example.com/robots.txt مكانًا صالحًا، أما http://www.example.com/mysite/robots.txt فليس كذلك.

 

اختبار ملف robots.txt

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

 

لاختبار ملف robots.txt لأحد المواقع:

  1. في الصفحة الرئيسية لأدوات مشرفي المواقع، انقر على الموقع الذي تريده.
  2. ضمن Health، انقر على عناوين URL المحظورة..
  3. وإذا لم يكن محددًا، فانقر على علامة التبويب اختبار ملف robots.txt.
  4. انسخ محتوى ملف robots.txt والصقه داخل المربع الأول.
  5. في مربع عناوين URL، أدخل الموقع المراد اختباره.
  6. في قائمة وكلاء المستخدم، حدد وكلاء المستخدم الذين تريدهم.

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

 

وتقدم هذه الأداة النتائج لوكلاء مستخدم Google فقط (مثل Googlebot). وربما لا تفسر بعض برامج التتبع الأخرى ملف robots.txt بنفس الطريقة. على سبيل المثال، يسمح Googlebot بتعريف أشمل للمعيار بروتوكول robots.txt.

 

حيث تفسر أوامر Allow:، وكذلك بعض تطابقات الأنماط. لذا، فبينما تبين الأداة أنها تمكنت من تفسير السطور التي تشتمل على هذه الامتدادات، ضع في حسبانك أن هذا ينطبق على Googlebot فقط، وليس بالضرورة على برامج التتبع الأخرى التي قد تزحف إلى موقعك.