شرح ملف robots.txt

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

يمكن الوصول لملف robots.txt لأي موقع من خلال إضافة robots.txt آخر دومين الموقع
الملف الذي نستعمله في هذه المدونة يمكن الوصول له من https://ww2.codatey.top/robots.txt

تخصيص ملف robots.txt

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

تخصيص ملف ROBOTS.TXT

اكمل الشرح للحصول على معلومات أخرى لتخصيص الملف

ملف robots.txt الافتراضي

إذا لم تقم بتخصيص ملف robots.txt فبلوجر تستعمل هذا :

User-agent: Mediapartners-Google
Disallow:

User-agent: *
Disallow: /search
Allow: /

Sitemap: https://ww3.codatey.top/sitemap.xml

هذا الملف يحتوي معلومات مهمة تقوم بتوجيه الزواحف , توجد أنواع مختلفة من الزواحف نذكر منها عناكب البحث المتخصصة في البحث عن مواضيع لأرشفتها , و توجد الزواحف المتخصصة في جلب المعلومات مثل facebookexternalhit/1.1 الخاص بالفيسبوك وظيفته الزحف للروابط التي تم مشاركتها على الفيسبوك لجلب الصور و المعلومات المخزنة به , أو زاحف ia_archiver الخاص بموقع ألكسا الذي تكمن وظيفته تصفح المواقع لتحليل المحتوى و المواقع ذات صلة ووظائف تحليلية أخرى...
توجد أنواع كثيرة من الزواحف كل زاحف و الوظيفة التي تم تطويره ليقوم بها .

مكونات ملف robots.txt

يقوم بتحديد نوع الزاحف الذي ستعطى له الأوامر , لإختيار زاحف الفيسبوك facebookexternalhit/1.1 مثلا سنستعمل هذه السطور
User-agent: facebookexternalhit/1.1
Disallow: /p
Disallow: /search/label
Allow: /

User-agent: *
Allow: /

Sitemap: https://ww3.codatey.top/sitemap.xml


سيتم تطبيق الاوامر المحددة بالأحمر لزاحف الفيسبوك فقط  -شرح الاوامر في الاسفل- أما إذا قمنا بإستعمال علامة * في user agent فتقوم بتحديد كل الزواحف الاخرى بدون المحددة في الكود , يعني الامر المحدد بالأخضر allow:/ الموجود في user agent * لن يعمل على زاحف الفيسبوك لأن زاحف الفيسبوك خصصنا له الاوامر الخاصة به وحده .

أوامر User-agent

يمكنك إضافة سطر Disallow لمنع الزاحف من الوصول لكامل أو بعض صفحات مدونتك
مثال:
User-agent: *
Disallow: /
هذا السطر سيقوم بمنع كل أنواع الزواحف من الوصول لموقعك
* وظيفته تحديد كل أنواع الزواحف
و Disallow يقوم بمنع الوصول لأي صفحة في الموقع تبدأ بـ / يعني كل الصفحات , إذا كنت تريد منع الوصول لبعض الصفحات يمكنك تحديدها كهذا المثال
User-agent: *
Disallow: /p
Disallow: /2018/03/something.html
Disallow: /search
هكذا لن تتمكن الزواحف من الوصول للصفحات المذكورة و هذه أمثلة لبعض الروابط التي لا يمكن الوصول إليها عند استعمال تلك السطور:
  • https://ww2.codatey.top/p/contact.html
  • https://ww2.codatey.top/2018/03/something.html
  • https://ww2.codatey.top/search/label/something
  • https://ww2.codatey.top/search?q=something


إما إذا كان Disallow فارغ مثل :
User-agent: *
Disallow: 
فستقوم الزواحف بالوصول لجميع صفحات موقعك

Allow

يمكنك إضافة سطر Allow للسماح للزاحف للوصول لصفحات محددة , مثال للإستعمال

User-agent: *
Disallow: /p
Allow: /p/important.html
Disallow يمنع الوصول لأي صفحة في المدونة لأن بلوجر تستضيف كل الصفحات على روابط تبدأ بـ /p
إلا أن Allow قام بالسماح لصفحة واحدة و هي  important.html 

Sitemap

تخبر عناكب البحث عن مكان تخزين خريطة مدونتك , لتسهيل الوصول لروابط التدوينات في بلوجر يمكن الوصول لخريطة المدونة بطرق مختلفة
  • https://ww2.codatey.top/feeds/posts/default?orderby=UPDATED
  • https://ww2.codatey.top/feeds/posts/default?alt=atom
  • https://ww2.codatey.top/sitemap.xml
  • https://ww2.codatey.top/atom.xml
من وجهة نظري الافضل هي الاولى لأنها تقوم بجلب المواضيع بترتيب آخر تحديث , يعني أي موضوع قمت بتحديثه يصبح في أعلى الخريطة .
تقوم بإضافتها في أسفل ملف robots.txt بهذا الشكل

User-agent: *
Allow: /

Sitemap: https://ww2.codatey.top/feeds/posts/default?orderby=UPDATED

التعليقات #

يمكن أيضا في ملفات robots.txt إضافة تعليقات كما في مختلف لغات البرمجة , ربما تريد إضافة تعليقات لتذكر شيء ما أو لإنشاء تنبيه عن سبب قيامك بإضافة احدى الاوامر أو فقط كملاحظة..
لكتابة تعليق قم بالبدأ بـ # في أول الكلام كما في المثال
User-agent: *
Allow: /
# تم منع الوصول للصفحة أسفله لأنها تحتوي على معلومات مهمة لا نريد أن يتم أرشفتها
# this page contains sensitive info
Disallow: /p/secret.html

Sitemap: https://ww2.codatey.top/feeds/posts/default?orderby=UPDATED

طريقة إستعمال ال wildcard في الروابط

يساعدك حرف البدل * على تحديد مجموعة من الحروف اللامتناهية
ال wildcard يمكن أن يعني "كل شيء" كمثال:
User-agent: *
# في الكود أسفله قمنا بمنع الوصول لكامل المدونة
Disallow: /
و لكن قمنا بإتاحة الوصول لمجموعة من الصفحات الأخرى
Allow: /p/*.html

قمنا بإتاحة الوصول لجميع الصفحات لأن * يمكن أن يعني كل شيء , فالسطر يمكن أن يحدد عدد لا محدود من الصفحات و هذه بعض أمثلتها
  • https://ww2.codatey.top/p/contact.html
  • https://ww2.codatey.top/p/usage-agreement.html
  • https://ww2.codatey.top/p/privacy-policy.html

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