ملف Robots.txt وكيفية انشائه

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


إذاً هل ملف Robots.txt مهم للموقع ؟
نعم ملف Roots مهم جداً لأي موقع مثل اهمية ملف sitemap.xml مهما كان مجال الموقع او المحتوى, ويلعب دور كبير في تحسين موقعك في محركات البحث و الـ SEO حيث من خلال هذا الملف ستتمكن من السماح او منع محركات البحث من فهرسة و ارشفة الموقع سواء كان للموقع بالكامل او مسارات و ملفات محددة. وفي هذه التدوينة سيكون الشرح مختصر و واضح جداً بعكس الشروحات التي قد قرأتها من قبل. واذا اعجبك الشرح فلا تكن بخيلاً وقم بنشر هذا الشرح للأخرين من خلال نسخ رابط الشرح من الاعلى وارساله لأصدقائك. واذا قمت بنسخ المحتوى فضلاً وليس امراً ارفق رابط الشرح كمصدر له.


Namecheap.com
كيف تنشيء ملف Robots.txt ؟
قم بفتح برنامج المفكرة أو اي برنامج اخر مثل Notepad++ وحفظ الملف بإسم Robots.txt ورفعه على موقعك. أو تستطيع من خلال لوحة تحكم موقعك cPanel إنشاء ملف بإسم Robots.txt مباشرة او من خلال اي منصة ادارة محتوى مثل ووردبريس.

ملاحظة: يجب ان يكون الملف على المسار الرئيسي للموقع مثال ( alzubaidi.me/robots.txt ) لأن هذا المسار الافتراضي الذي تنظر له عناكب محركات البحث بحثاً عن الملف.

كيف تكتب قوانين و اوامر ملف Robots.txt ؟
في بداية الملف دائماً نضع الأمر التالي User-Agent: * ) وهو تعريف انواع عناكب البحث وعلامة النجمة * تعني جميع انواع العناكب دون استثناء. فلو مثلاً كتبنا الامر بهذا الشكل User-Agent: Googlebot ) فهذا يعني باننا عرفنا عناكب بحث محددة وهيّ عناكب بحث قوقل وبالتالي ستقوم بالالتزام بأي اوامر اخرى نضعها اسفل هذا الامر. في حين بقية انواع عناكب البحث لمحركات البحث الاخرى مثل ياهو و ياندكس وغيرهم ستتجاهل تماماً هذه الاوامر وستقوم بفهرسة و ارشفة موقعك بالشكل الافتراضي.

تعريف الأوامر:
أمر ( User-Agent ) وهو امر اولي رئيسي لتعريف انواع عناكب محركات البحث كما شرحت سابقاً.
أمر ( allow ) وهو امر السماح لعناكب محركات البحث بزيارة و ارشفة مسار محدد ويشمل جميع محتوياته او ملف محدد.
أمر ( disallow ) وهو امر منع عناكب محركات البحث من زيارة مسار محدد ويشمل جميع محتوياته او ملف محدد.
أمر ( sitemap ) وهو امر تعريف عناكب محركات البحث بملف خريطة الموقع sitemap.xml.

كيفية استخدام الاوامر بشكل صحيح:
في بداية ملف Robots.txt نضع الامر الاول ( User-Agent: * ) لتعريف جميع انواع عناكب محركات البحث ثم نضع اسفله كل امر في سطر منفصل. نضع في ثاني سطر الأمر ( allow: / ) لنخبر جميع عناكب محركات البحث بأنه مسموح لها بزيارة جميع مسارات و محتويات الموقع. فلو وضعنا الأمر ( disallow: / ) بذلك نحن نخبر جميع عناكب البحث بأنه ممنوع عليها زيارة جميع مسارات و محتويات الموقع.

إذاً كيف اسمح لعناكب البحث بزيارة كامل الموقع بإستثناء مسار أو ملف محدد ؟
  • نضع في السطر الاول الامر User-Agent: * ) لتعريف جميع انواع عناكب البحث.
  • نضع في السطر الثاني الامر ( allow: / ) للسماح لجميع العناكب بزيارة محتويات الموقع كاملاً.
  • نضع في السطر الثالث الامر ( disallow: /profile ) لمنع جميع العناكب بعدم زيارة و فهرسة هذا المسار. ويمكن استخدام استخدام الامر ( disallow: /profile/file.html ) لمنع ملف محدد بدلاً من منع المسار كاملاً.
  • نضع في السطر الرابع الامر ( sitemap: https://alzubaidi.me/sitemap.xml ) وذلك لتعريف عناكب البحث ان هناك ملف خريطة للموقع ولاحظ باننا وضعنا الدومين و مسار الملف كاملاً وهذا ينطبق فقط على ملفات sitemap.
ويمكن عكس الفكرة بمنع العناكب من زيارة جميع محتويات الموقع و نسمح لمسارات او ملفات محددة وذلك من خلال عكس الاوامر المذكورة سابقاً. وناخذ عليها مثال سريع:
  • نضع في السطر الاول الامر User-Agent: * ) لتعريف جميع انواع عناكب البحث.
  • نضع في السطر الثاني الامر ( disallow: / ) لمنع جميع العناكب من زيارة محتويات الموقع بالكامل.
  • نضع في السطر الثالث الامر ( allow: /profile ) للسماح للعناكب بزيارة محتويات هذا المسار فقط او نضع الامر ( allow: /profile/file.html ) للسماح بزيارة ملف محدد.
قد يدور في ذهنك سؤال. هل استطيع منع العناكب من زيارة مسار بكامل محتوياته و السماح لملف واحد او عدة ملفات فقط ؟ نعم تستطيع ذلك بوضع الاوامر بالشكل التالي. لنفرض اننا نرغب بمنع العناكب بعدم زيارة المسار profile في حين نرغب بالسماح بزيارة الملف file.html داخله.
  • نضع امر المنع ( disallow: /profile )
  • في السطر الذي يليه نضع الامر ( allow: /profile/file.html )
ايضاً قد تدور في ذهنك قليلاً من العبقرية وتسأل هل استطيع منع عدة مسارات في امر واحد ؟ او في سطر امر واحد ؟ لا طبعاً ويعتبر خطأ فادح ويقع فيه الكثير من العباقرة اصحاب المواقع وستسبب لعناكب البحث عرقلة في فهم الملف وتلقائياً ستتجاهله وتتجاهل موقعك بالكامل وتبحث عن موقع اخر. وهذا مثال على امر خاطئ للسماح او لمنع عدة مسارات:
  • امر السماح الخاطئ ( allow: /profile /card /page )
  • امر المنع الخاطئ ( disallow: /admin /login /logs )
  • ينطبق الامر على المسارات و الملفات و المحتويات جميعاً على حدٍ سواء.
إذاً يجب وضع كل امر سماح او منع لكل مسار او ملف في سطر امر منفصل عن الاخر تماماً.

مثال على ملف robots.txt متكامل لمزيد من التوضيح.
المثال التالي هو مثال على بنية ملف robots بالكامل مما يوضح كيفية عمله بشكل اكثر سهولة وفهم.

User-agent: *
Allow: /
disallow: /admin
disallow: /login
disallow: /private
Allow: /private/file.pdf
sitemap: https://alzubaidi.me/sitemap.xml
sitemap: https://alzubaidi.me/sitemap.xml.gz
مثال اخر على ملف robots.txt متكامل ولكن لعناكب محركات بحث محددة فقط.
المثال التالي هو مثال على كيفية بناء ملف robots و وضع اوامر محددة لعناكب محرك بحث محدد. ويمكن تغيير الاوامر لكل محرك بحث حسب ما تحتاجه لموقعك.

Namecheap.com

User-agent: *
disallow: /
User-agent: Googlebot
Allow: /
disallow: /admin
disallow: /login
disallow: /private
Allow: /private/file.pdf
sitemap: https://alzubaidi.me/sitemap.xml
sitemap: https://alzubaidi.me/sitemap.xml.gz
User-agent: yandex
Allow: /
disallow: /admin
disallow: /login
disallow: /private
Allow: /private/file.pdf
sitemap: https://alzubaidi.me/sitemap.xml
sitemap: https://alzubaidi.me/sitemap.xml.gz
User-agent: yahoo
Allow: /
disallow: /admin
disallow: /login
disallow: /private
Allow: /private/file.pdf
sitemap: https://alzubaidi.me/sitemap.xml
sitemap: https://alzubaidi.me/sitemap.xml.gz
النهاية:
لن اقول لكم وداعاً انما سأقول القاكم في شرح اخر. عزيزي القارئ اعلم جيداً ان من نفع الاخرين سينفعه الاخرين يوماً ما. واعلم جيداً ليس كل ما يُشاع في الانترنت هو صحيح هناك الكثير من المعلومات المغلوطة والمخفية حتى لا يستفيد الاخرين منها. لذلك اذا استفدت من هذا الشرح فلا تبخل بنشر رابط الشرح بين اصدقائك ليستفيدوا مثلك بدلاً من نسخ محتواه واذا كنت مصراً فضع رابط الشرح هذا كمصدر في موقعك.