فایل robots.txt به موتورهای جستجو می گوید که کدام یک از صفحات سایت شما را می توانند بخزند. یک پیکربندی robots.txt نامعتبر می تواند دو نوع مشکل ایجاد کند:
- می تواند موتورهای جستجو را از خزیدن در صفحات عمومی باز دارد و باعث می شود محتوای شما کمتر در نتایج جستجو نشان داده شود.
- می تواند باعث شود موتورهای جستجو صفحاتی را که ممکن است نخواهید در نتایج جستجو نشان داده شوند، بخزند.
چگونه ممیزی robots.txt Lighthouse شکست می خورد
Lighthouse فایل های robots.txt نامعتبر را پرچم گذاری می کند:

گسترش robots.txt در گزارش شما ممیزی معتبر نیست تا متوجه شوید که robots.txt شما چه مشکلی دارد.
خطاهای رایج عبارتند از:
-
No user-agent specified -
Pattern should either be empty, start with "/" or "*" -
Unknown directive -
Invalid sitemap URL -
$ should only be used at the end of the pattern
Lighthouse بررسی نمی کند که فایل robots.txt شما در مکان صحیح قرار دارد. برای عملکرد صحیح، فایل باید در ریشه دامنه یا زیر دامنه شما باشد.
نحوه رفع مشکلات robots.txt
مطمئن شوید robots.txt کد وضعیت HTTP 5XX را بر نمی گرداند
اگر سرور شما یک خطای سرور ( کد وضعیت HTTP در 500s) را برای robots.txt برگرداند، موتورهای جستجو نمیدانند کدام صفحات باید خزیده شوند. آنها ممکن است خزیدن در کل سایت شما را متوقف کنند، که از ایندکس شدن محتوای جدید جلوگیری می کند.
برای بررسی کد وضعیت HTTP، robots.txt در Chrome باز کنید و درخواست را در Chrome DevTools بررسی کنید .
robots.txt کوچکتر از 500 کیلوبایت نگه دارید
اگر فایل بزرگتر از 500 کیلوبایت باشد، موتورهای جستجو ممکن است پردازش robots.txt در اواسط راه متوقف کنند. این می تواند موتور جستجو را گیج کند و منجر به خزیدن نادرست سایت شما شود.
برای کوچک نگه داشتن robots.txt ، کمتر روی صفحاتی که به صورت جداگانه حذف شده اند و بیشتر روی الگوهای گسترده تر تمرکز کنید. برای مثال، اگر باید خزیدن فایلهای PDF را مسدود کنید، هر فایل جداگانه را غیرمجاز نکنید. در عوض، با استفاده از disallow: /*.pdf ، همه URL های حاوی .pdf .
هر گونه خطای فرمت را برطرف کنید
- فقط خطوط خالی، نظرات و دستورالعملهای مطابق با قالب "name: value" در
robots.txtمجاز هستند. - مطمئن شوید که مقادیر
allowوdisallowیا خالی هستند یا با/یا*شروع می شوند. -
$در وسط یک مقدار استفاده نکنید (به عنوان مثال،allow: /file$html).
مطمئن شوید که مقداری برای user-agent وجود دارد
نامهای عامل کاربر که به خزندههای موتورهای جستجو میگوید کدام دستورالعملها را دنبال کنند. شما باید برای هر نمونه از user-agent مقداری ارائه دهید تا موتورهای جستجو بدانند که آیا مجموعه دستورالعمل های مرتبط را دنبال کنند یا خیر.
برای تعیین یک خزنده موتور جستجوی خاص، از یک نام عامل کاربر از لیست منتشر شده آن استفاده کنید. (به عنوان مثال، لیست Google از عوامل کاربر مورد استفاده برای خزیدن است.)
از * برای مطابقت با تمام خزندههای بیهمتا استفاده کنید.
user-agent: disallow: /downloads/
هیچ عامل کاربری تعریف نشده است.
user-agent: * disallow: /downloads/ user-agent: magicsearchbot disallow: /uploads/
یک عامل کاربر عمومی و یک عامل کاربر magicsearchbot تعریف شده است.
قبل از user-agent مطمئن شوید که هیچ دستورالعمل allow یا disallow وجود ندارد
نامهای عامل کاربر بخشهای فایل robots.txt شما را مشخص میکنند. خزندههای موتورهای جستجو از این بخشها برای تعیین دستورالعملها استفاده میکنند. قرار دادن یک دستورالعمل قبل از اولین نام عامل کاربر به این معنی است که هیچ خزنده ای آن را دنبال نمی کند.
# start of file disallow: /downloads/ user-agent: magicsearchbot allow: /
هیچ خزنده موتور جستجو دستور disallow: /downloads نمی خواند.
# start of file user-agent: * disallow: /downloads/
تمام موتورهای جستجو از خزیدن پوشه /downloads مجاز نیستند.
خزندههای موتورهای جستجو فقط دستورالعملهای بخش با خاصترین نام عامل کاربر را دنبال میکنند. برای مثال، اگر دستورالعملهایی برای user-agent: * و user-agent: Googlebot-Image دارید، Googlebot Images فقط دستورالعملهای موجود در بخش user-agent: Googlebot-Image دنبال میکند.
یک URL مطلق برای sitemap ارائه دهید
فایل های نقشه سایت راهی عالی برای اطلاع موتورهای جستجو در مورد صفحات وب سایت شما هستند. یک فایل نقشه سایت به طور کلی شامل فهرستی از URL های وب سایت شما به همراه اطلاعاتی درباره آخرین زمان تغییر آنها می باشد.
اگر می خواهید یک فایل نقشه سایت در robots.txt ارسال کنید، مطمئن شوید که از URL مطلق استفاده می کنید.
sitemap: /sitemap-file.xml
sitemap: https://example.com/sitemap-file.xml