اكتب قواعد robots.txt، ثم تحقق بدقة مما تحظره
يبني مولد robots.txt هذا الملف من مجموعات وكلاء المستخدم (user agents) وقواعد Allow/Disallow، ويضيف خريطة موقعك، ويطبّق إعدادات جاهزة مثل حظر زواحف تدريب الذكاء الاصطناعي أو ملف WordPress قياسي بنقرة واحدة. ثم يجيب المختبر عن السؤال المهم: هل هذا الرابط مسموح لهذا الزاحف، وأي سطر يحسم ذلك؟ يتبع المختبر RFC 9309 والسلوك الموثّق لدى Google — مجموعة user-agent الأكثر تحديدًا، وأطول مسار مطابق، وفوز Allow عند التعادل، وحرفا البدل * و$ — وينبّهك إلى الأخطاء أثناء الكتابة. كل شيء يعمل في متصفحك.
كيف تنشئ ملف robots.txt وتختبره
- 1ابدأ من إعداد جاهز — السماح للجميع أو حظر زواحف الذكاء الاصطناعي أو WordPress أو حظر أدوات SEO أو حظر الجميع — أو عدّل المجموعات مباشرة.
- 2في كل مجموعة، اذكر وكلاء المستخدم الذين تنطبق عليهم (
*تعني كل الزواحف) وأضف مسارات Disallow وAllow مثل/admin/أو/*.pdf$. - 3أضف الرابط المطلق لخريطة موقع XML، وراجع التحذيرات أسفل الناتج، ثم انسخ
robots.txtأو نزّله. - 4انتقل إلى اختبار، وأدخل اسم الزاحف ورابطًا واحدًا في كل سطر، وشاهد الحكم على كل رابط مع القاعدة والمجموعة اللتين حسمتاه. الصق هناك أي ملف robots.txt منشور لتدقيقه.
- 5ارفع الملف إلى جذر نطاقك ليُخدَّم على
https://yourdomain.com/robots.txt.
كيف يعمل robots.txt
قبل الزحف إلى موقع، يجلب الزاحف الملتزم ملف /robots.txt من جذر النطاق ويبحث عن القواعد الموجّهة إليه. الملف قائمة من المجموعات: سطر User-agent واحد أو أكثر تليه قواعد Allow وDisallow. أما أسطر Sitemap فتقع خارج المجموعات وتنطبق على الجميع.
لكل بروتوكول ونطاق ومنفذ ملف robots.txt خاص به: القواعد في https://example.com/robots.txt لا تشمل https://shop.example.com ولا http://example.com. غياب الملف (404) يعني أن الزحف إلى كل شيء مسموح؛ أما خطأ الخادم فيجعل Google يوقف الزحف إلى الموقع مؤقتًا.
قواعد المطابقة بدقة
- اختيار المجموعة
- يلتزم الزاحف بالمجموعة التي تسمّيه بأكبر قدر من التحديد فقط، والمطابقة لا تميّز حالة الأحرف — يستخدم Googlebot-Image مجموعة Googlebot-Image إن وُجدت، وإلا مجموعة Googlebot، وإلا *. تُدمج المجموعات التي تسمّي الوكيل نفسه. قواعد المجموعة * لا تُضاف إلى مجموعة مسمّاة.
- أطول تطابق يفوز
- داخل المجموعة، تحسم الأمر القاعدة التي يطابق مسارها أكبر عدد من أحرف مسار الرابط. Disallow: /shop مع Allow: /shop/sale يسمح بـ /shop/sale/shoes.
- التعادل لصالح Allow
- إذا تطابقت قاعدة Allow وقاعدة Disallow بالطول نفسه، يُسمح بالرابط.
- * و$
- تطابق * أي سلسلة من الأحرف، و$ في النهاية تربط النمط بنهاية الرابط: Disallow: /*.pdf$ يحظر /files/report.pdf لكن ليس /report.pdf?download=1.
- المسارات بادئات
- Disallow: /admin يحظر /admin و/admin/ و/administrator. أضف شرطة مائلة في النهاية لحظر المجلد فقط. تطابق القواعد المسار وسلسلة الاستعلام مع مراعاة حالة الأحرف.
- Disallow فارغ
- Disallow: بلا مسار يسمح بكل شيء؛ وهو الطريقة المعتادة لكتابة مجموعة لا تحظر شيئًا.
حظر زواحف الذكاء الاصطناعي
تنشر شركات الذكاء الاصطناعي رموز user-agent الخاصة بزواحفها كي يتمكن أصحاب المواقع من الانسحاب. يحظر الإعداد الجاهز حظر زواحف الذكاء الاصطناعي كلًّا من GPTBot وChatGPT-User وOAI-SearchBot (OpenAI)، وClaudeBot وClaude-User وClaude-SearchBot وanthropic-ai (Anthropic)، وGoogle-Extended (تدريب Gemini)، وApplebot-Extended، وCCBot (Common Crawl)، وPerplexityBot، وBytespider (ByteDance)، وmeta-externalagent (Meta)، وAmazonbot وغيرها، مع ترك محركات البحث العادية حرة في الزحف.
Google-Extended وApplebot-Extended رموز تحكم وليست زواحف مستقلة: حظرها يُبقي محتواك خارج تدريب Gemini وApple Intelligence دون التأثير في بحث Google أو زحف Applebot للبحث. لاحظ أن روبوتات البحث مثل OAI-SearchBot وClaude-SearchBot تغذّي الاستشهادات في إجابات البحث بالذكاء الاصطناعي؛ احذفها من القائمة إن أردت الظهور هناك. الالتزام طوعي، فاستخدم قواعد الخادم أو جدار الحماية للزواحف التي تتجاهل robots.txt.
ما لا يستطيع robots.txt فعله
يتحكم robots.txt في الزحف لا في الفهرسة. قد يظهر رابط محظور في نتائج Google — بلا وصف — إذا كانت صفحات أخرى ترتبط به. لإبقاء صفحة خارج نتائج البحث، اسمح بالزحف وأضف وسم meta للروبوتات noindex أو ترويسة X-Robots-Tag؛ فـ Google يتجاهل أسطر Noindex: في robots.txt منذ 2019. أنشئ الوسم باستخدام مولد وسوم meta.
لا تستخدم robots.txt لإخفاء المناطق الخاصة: فالملف علني ويسرد بالضبط المسارات التي تفضّل ألا يجدها الناس. احمِها بالمصادقة. ولا تحظر ملفات CSS وJavaScript التي تحتاجها الصفحات للعرض، وإلا لن يرى Google الصفحة كما يراها الزوار.
Crawl-delay وHost وتوجيهات أخرى
يطلب Crawl-delay من الزاحف الانتظار عددًا من الثواني بين الطلبات. يلتزم به Bing وYandex؛ أما Google فيتجاهله ويضبط معدل زحفه تلقائيًا حسب استجابات خادمك. كان Host توجيهًا خاصًا بـ Yandex لتحديد المرآة المفضلة وقد أصبح متقادمًا. يقرأ Google 500 KiB على الأكثر من ملف robots.txt.
وجّه الزواحف إلى خريطة موقع XML بسطر Sitemap: واحد أو أكثر بروابط مطلقة؛ ويمكن وضعها في أي مكان من الملف. أنشئ خريطة الموقع نفسها باستخدام مولد خرائط الموقع.
الأسئلة الشائعة
- أين أضع ملف robots.txt؟
- في جذر النطاق، ليُخدَّم على https://example.com/robots.txt. يُتجاهل ملف robots.txt الموجود في مجلد فرعي، ويحتاج كل نطاق فرعي إلى ملفه الخاص.
- كيف أحظر جميع الزواحف؟
- استخدم User-agent: * متبوعًا بـ Disallow: /. ستتوقف الزواحف الملتزمة بـ robots.txt عن جلب الصفحات، لكن الروابط المعروفة مسبقًا قد تبقى في نتائج البحث لبعض الوقت.
- كيف أحظر GPTBot وزواحف الذكاء الاصطناعي الأخرى؟
- أضف مجموعة تسرد وكلاء المستخدم الخاصين بها — GPTBot وClaudeBot وCCBot وGoogle-Extended وPerplexityBot وغيرها — مع Disallow: /. يكتب الإعداد الجاهز «حظر زواحف الذكاء الاصطناعي» هذه المجموعة لك ويُبقي محركات البحث مسموحة.
- هل يزيل Disallow الصفحة من Google؟
- لا. إنه يوقف الزحف، لكن الرابط قد يُفهرس رغم ذلك من خلال الروابط. استخدم وسم meta بقيمة noindex على صفحة يمكن الزحف إليها، أو أزلها عبر Search Console، لإبقائها خارج النتائج.
- أي قاعدة تفوز عندما تتطابق Allow وDisallow معًا؟
- صاحبة المسار الأطول. وإذا تساوى الطولان، تفوز Allow. يعرض المختبر السطر الذي حسم كل رابط.
- هل يميّز robots.txt حالة الأحرف؟
- أسماء التوجيهات وقيم user-agent لا تميّزها، لكن المسارات تميّزها: Disallow: /Admin لا يحظر /admin. ويجب أن يكون اسم الملف نفسه robots.txt بأحرف صغيرة.
- هل يدعم Google التوجيه Crawl-delay؟
- لا. يتجاهل Google التوجيه Crawl-delay ويحدد معدل زحفه حسب استجابة خادمك. أما Bing وYandex فيلتزمان به.
- هل يُرفع ملف robots.txt الخاص بي إلى أي مكان؟
- لا. الإنشاء والتحليل والاختبار كلها تتم في متصفحك.