آمار نشان میدهد که بیش از 38% وبسایتها دارای خطاهای جدی در فایل robots.txt هستند که باعث کاهش ایندکس صفحات و افت رتبه میشود. خبر خوب این است که با درک صحیح این فایل و بهینهسازی آن، میتوانید کنترل کاملی روی نحوه خزش گوگل داشته باشید و سرعت ایندکس شدن را تا 3 برابر افزایش دهید.
این فایل متنی ساده، یکی از سادهترین و در عین حال قدرتمندترین ابزارهای سئو تکنیکال است. یک ویرایش اشتباه در آن میتواند در عرض چند ساعت، سایت شما را از نتایج جستجو محو کند. اما نگران نباشید. در این راهنمای کامل، به زبان ساده یاد میگیرید که فایل robots.txt چیست، چطور کار میکند و چگونه آن را به یک استراتژیست هوشمند برای مدیریت بودجه خزش (Crawl Budget) و بهبود رتبه سایتتان تبدیل کنید.
در این راهنمای جامع، قرار است با هم یاد بگیریم:
- فایل robots.txt دقیقاً چیست و چرا برای سئو حیاتی است
- چگونه یک فایل robots.txt حرفهای بسازیم
- دستورات کلیدی و کاربردهای عملی آنها
- 7 اشتباه رایج که باید از آنها دوری کنید
- تکنیکهای پیشرفته بهینهسازی برای سایتهای بزرگ
فایل Robots.txt چیست و چه کاری انجام میدهد؟
فایل robots.txt یک فایل متنی ساده است که در ریشه (root) وبسایت شما قرار میگیرد و به رباتهای موتورهای جستجو (مثل Googlebot) دستور میدهد که کدام بخشهای سایت را بخزند و کدام بخشها را نادیده بگیرند.
به زبان ساده، این فایل مثل یک نگهبان دروازه عمل میکند که به بازدیدکنندگان خاص (رباتها) میگوید: “اینجا بیا، اونجا نرو!”
چرا به فایل Robots.txt نیاز داریم؟
موتورهای جستجو مثل گوگل، بودجه محدودی برای خزش هر سایت دارند که به آن Crawl Budget میگویند. اگر این بودجه روی صفحات بیاهمیت (مثل صفحات ادمین، فیلترهای بینهایت محصولات، یا صفحات تکراری) هدر برود، صفحات مهم شما دیر ایندکس میشوند یا اصلاً ایندکس نمیشوند.
با استفاده از robots.txt میتوانید:
- بودجه خزش را بهینه کنید و گوگل را به سمت صفحات مهم هدایت کنید
- از ایندکس شدن محتوای تکراری جلوگیری کنید
- سرعت خزش سایت را افزایش دهید
- از دسترسی رباتهای مخرب به بخشهای حساس جلوگیری کنید
ساختار و دستورات اصلی فایل Robots.txt
فایل robots.txt از چند دستور کلیدی تشکیل شده که هر کدام نقش خاصی دارند. بیایید آنها را با مثالهای عملی بررسی کنیم.
1. User-agent (تعیین ربات هدف)
این دستور مشخص میکند که قوانین بعدی برای کدام ربات اعمال شود.
User-agent: Googlebot
اگر میخواهید قوانین برای همه رباتها اعمال شود، از ستاره (*) استفاده کنید:
User-agent: *
نکته مهم: هر User-agent میتواند قوانین مخصوص به خود را داشته باشد. مثلاً میتوانید برای Googlebot قوانین متفاوتی نسبت به Bingbot تعریف کنید.
2. Disallow (مسدود کردن مسیرها)
این دستور به ربات میگوید که کدام مسیرها را نباید بخزد.
User-agent: *
Disallow: /admin/
Disallow: /private/
Disallow: /temp/
در این مثال، تمام رباتها از خزش پوشههای admin، private و temp منع شدهاند.
مثال کاربردی برای فروشگاههای آنلاین:
User-agent: *
Disallow: /cart/
Disallow: /checkout/
Disallow: /my-account/
Disallow: /*?filter=
این کد از ایندکس شدن صفحات سبد خرید، پرداخت، حساب کاربری و فیلترهای بینهایت محصولات جلوگیری میکند.
3. Allow (مجاز کردن مسیرهای خاص)
گاهی میخواهید یک پوشه را مسدود کنید اما یک زیرپوشه خاص از آن را باز بگذارید. در این حالت از Allow استفاده میکنید.
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
این کد تمام پوشه wp-admin را مسدود میکند اما فایل admin-ajax.php را (که برای عملکرد صحیح وردپرس ضروری است) باز میگذارد.
4. Sitemap (معرفی نقشه سایت)
یکی از مهمترین دستورات که اغلب فراموش میشود! با این دستور میتوانید آدرس فایل sitemap.xml خود را به گوگل معرفی کنید.
Sitemap: https://example.com/sitemap.xml
Sitemap: https://example.com/sitemap-products.xml
چرا این مهم است؟ وقتی گوگل فایل robots.txt شما را میخواند، بلافاصله sitemap شما را هم پیدا میکند و خزش را سریعتر شروع میکند.
5. Crawl-delay (تاخیر بین درخواستها)
این دستور به ربات میگوید که چند ثانیه بین هر درخواست صبر کند. معمولاً برای سرورهای ضعیف یا جلوگیری از بار زیاد استفاده میشود.
User-agent: *
Crawl-delay: 10
هشدار: گوگل این دستور را نادیده میگیرد! اما Bing و برخی رباتهای دیگر آن را رعایت میکنند. برای کنترل سرعت خزش گوگل باید از Google Search Console استفاده کنید.
جدول مقایسه دستورات اصلی Robots.txt
| دستور | کاربرد | مثال | پشتیبانی گوگل |
|---|---|---|---|
| User-agent | تعیین ربات هدف | User-agent: Googlebot | |
| Disallow | مسدود کردن مسیر | Disallow: /admin/ | |
| Allow | مجاز کردن مسیر خاص | Allow: /wp-admin/admin-ajax.php | |
| Sitemap | معرفی نقشه سایت | Sitemap: https://site.com/sitemap.xml | |
| Crawl-delay | تاخیر بین درخواستها | Crawl-delay: 10 | |
| Noindex | جلوگیری از ایندکس | Noindex: /page/ |
چگونه یک فایل Robots.txt حرفهای بسازیم؟
حالا که با دستورات آشنا شدیم، بیایید یک فایل robots.txt استاندارد و بهینه برای انواع سایتها بسازیم.
الگوی پایه برای وبسایتهای کوچک و متوسط
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /wp-includes/
Disallow: /cgi-bin/
Disallow: /private/
Disallow: /?s=
Disallow: /*?
Allow: /*?p=
Sitemap: https://yoursite.com/sitemap.xml
توضیح:
- پوشههای مدیریتی وردپرس مسدود شدهاند
- صفحات جستجو (
/?s=) مسدود شدهاند تا از ایندکس محتوای تکراری جلوگیری شود - پارامترهای URL مسدود شدهاند اما پستهای تکی (
?p=) مجاز هستند - Sitemap معرفی شده است
الگوی پیشرفته برای فروشگاههای آنلاین (ووکامرس)
User-agent: *
Disallow: /cart/
Disallow: /checkout/
Disallow: /my-account/
Disallow: /*add-to-cart=
Disallow: /*?orderby=
Disallow: /*?filter_
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
User-agent: AhrefsBot
Crawl-delay: 10
User-agent: SemrushBot
Crawl-delay: 10
Sitemap: https://yourshop.com/sitemap.xml
Sitemap: https://yourshop.com/product-sitemap.xml
چرا این الگو بهتر است؟
- صفحات سبد خرید و پرداخت (که محتوای تکراری دارند) مسدود شدهاند
- فیلترهای بینهایت محصولات مسدود شدهاند
- رباتهای ابزارهای سئو (Ahrefs، Semrush) محدود شدهاند تا بودجه خزش را مصرف نکنند
- چند sitemap مختلف معرفی شده است
الگوی ویژه برای سایتهای خبری و وبلاگها
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /author/
Disallow: /tag/
Disallow: /?s=
Disallow: /page/
Allow: /category/
User-agent: Googlebot-News
Allow: /
Sitemap: https://yourblog.com/sitemap.xml
Sitemap: https://yourblog.com/news-sitemap.xml
نکات کلیدی:
- صفحات نویسنده و تگ (که معمولاً محتوای تکراری دارند) مسدود شدهاند
- صفحات pagination مسدود شدهاند
- دستهبندیها مجاز هستند
- Googlebot-News (ربات گوگل نیوز) دسترسی کامل دارد
نحوه ساخت و آپلود فایل Robots.txt
روش 1: ساخت دستی
- یک فایل متنی ساده با نام
robots.txtبسازید (نه Word، فقط Notepad یا هر ویرایشگر متن ساده) - دستورات مورد نظر را بنویسید
- فایل را در ریشه سایت (root directory) آپلود کنید
مسیر صحیح: https://yoursite.com/robots.txt (نه در پوشههای فرعی!)
روش 2: استفاده از افزونههای وردپرس
اگر از وردپرس استفاده میکنید، میتوانید از افزونههای زیر استفاده کنید:
- Yoast SEO: بخش Tools > File Editor
- Rank Math: General Settings > Edit robots.txt
- All in One SEO: Tools > Robots.txt Editor
روش 3: ویرایش از طریق cPanel
- وارد cPanel شوید
- به File Manager بروید
- فایل robots.txt را پیدا کنید (یا بسازید)
- روی Edit کلیک کنید و تغییرات را اعمال کنید
تست و بررسی فایل Robots.txt
ساختن فایل robots.txt فقط نصف کار است. باید مطمئن شوید که درست کار میکند!
ابزار تست رایگان گوگل
گوگل یک ابزار عالی در Search Console دارد:
- وارد Google Search Console شوید
- به بخش Legacy tools and reports بروید
- روی robots.txt Tester کلیک کنید
- فایل robots.txt خود را ببینید و تست کنید
نکته طلایی: میتوانید یک URL خاص را وارد کنید و ببینید که آیا توسط robots.txt مسدود شده یا نه.
ابزارهای آنلاین دیگر
- Robots.txt Checker از Technical SEO
- Robots.txt Validator از Merkle
- Screaming Frog SEO Spider: برای تست انبوه URLها
چکلیست تست دستی
قبل از انتشار نهایی، این موارد را بررسی کنید:
- [ ] فایل در مسیر
https://yoursite.com/robots.txtقابل دسترسی است - [ ] صفحات مهم (صفحه اصلی، محصولات، مقالات) مسدود نشدهاند
- [ ] صفحات غیرضروری (ادمین، سبد خرید، جستجو) مسدود شدهاند
- [ ] آدرس Sitemap صحیح است و کار میکند
- [ ] هیچ خطای syntax وجود ندارد
- [ ] فایل با encoding UTF-8 ذخیره شده است
7 اشتباه مرگبار در فایل Robots.txt که باید از آنها دوری کنید
1. مسدود کردن کل سایت به اشتباه
اشتباه رایج:
User-agent: *
Disallow: /
این کد تمام سایت شما را از گوگل مخفی میکند! متأسفانه این یکی از رایجترین اشتباهات است که باعث میشود سایتها از گوگل حذف شوند.
راه حل: اگر میخواهید همه چیز باز باشد، از این استفاده کنید:
User-agent: *
Disallow:
یا اصلاً خط Disallow را ننویسید.
2. استفاده از Noindex در Robots.txt
اشتباه:
User-agent: *
Noindex: /old-page/
دستور Noindex در robots.txt دیگر توسط گوگل پشتیبانی نمیشود و کار نمیکند!
راه حل صحیح: برای جلوگیری از ایندکس، از متاتگ noindex در خود صفحه استفاده کنید:
<meta name=”robots” content=”noindex, follow”>
3. مسدود کردن فایلهای CSS و JavaScript
اشتباه:
User-agent: *
Disallow: /wp-content/
Disallow: /*.css$
Disallow: /*.js$
گوگل برای رندر صحیح صفحات به فایلهای CSS و JS نیاز دارد. مسدود کردن آنها باعث میشود گوگل سایت شما را درست نبیند.
راه حل: این فایلها را باز بگذارید یا حداقل برای Googlebot مجاز کنید:
User-agent: Googlebot
Allow: /wp-content/themes/
Allow: /wp-content/plugins/
4. فراموش کردن معرفی Sitemap
بسیاری از وبمستران فایل sitemap.xml میسازند اما آن را در robots.txt معرفی نمیکنند. این یک فرصت از دست رفته برای خزش سریعتر است.
راه حل:
Sitemap: https://yoursite.com/sitemap.xml
5. استفاده از مسیرهای نسبی به جای مطلق
اشتباه:
Sitemap: /sitemap.xml
صحیح:
Sitemap: https://yoursite.com/sitemap.xml
همیشه URL کامل را برای Sitemap بنویسید.
6. نادیده گرفتن حساسیت به حروف بزرگ و کوچک
فایل robots.txt به حروف بزرگ و کوچک حساس است!
Disallow: /Admin/
این فقط /Admin/ را مسدود میکند، نه /admin/ را.
راه حل: همیشه از حروف کوچک استفاده کنید یا هر دو حالت را بنویسید.
7. مسدود کردن صفحاتی که میخواهید Noindex باشند
این یک تناقض است! اگر صفحهای را در robots.txt مسدود کنید، گوگل نمیتواند آن را بخزد و متاتگ noindex را نمیبیند. نتیجه؟ صفحه ممکن است همچنان در گوگل نمایش داده شود (با عنوان “اطلاعاتی در دسترس نیست”).
راه حل: صفحاتی که میخواهید noindex باشند را در robots.txt مسدود نکنید. بگذارید گوگل آنها را بخزد تا متاتگ noindex را ببیند.
جدول خطاهای رایج و راهحلها
| خطا | علامت | راهحل |
|---|---|---|
| مسدود کردن کل سایت | Disallow: / | حذف یا تغییر به Disallow: |
| مسدود کردن CSS/JS | صفحات بدون استایل در گوگل | Allow کردن فایلهای استاتیک |
| فراموشی Sitemap | خزش کند | اضافه کردن Sitemap: URL |
| استفاده از Noindex | صفحات همچنان ایندکس میشوند | استفاده از متاتگ در صفحه |
| مسیر نسبی Sitemap | Sitemap پیدا نمیشود | استفاده از URL کامل |
| فایل در مسیر اشتباه | خطای 404 | آپلود در ریشه سایت |
| Syntax اشتباه | دستورات اجرا نمیشوند | تست با ابزار گوگل |
تکنیکهای پیشرفته بهینهسازی Robots.txt
استفاده از Wildcards (کاراکترهای عام)
میتوانید از * (هر چیزی) و $ (پایان URL) استفاده کنید:
User-agent: *
Disallow: /*?*sort=
Disallow: /*.pdf$
Disallow: /*/private/
توضیح:
/*?*sort=: هر URL که پارامتر sort داشته باشد/*.pdf$: هر فایل PDF/*/private/: هر پوشه private در هر جایی از سایت
مدیریت رباتهای مختلف
میتوانید برای هر ربات قوانین جداگانه تعریف کنید:
User-agent: Googlebot
Disallow: /private/
User-agent: Bingbot
Disallow: /private/
Crawl-delay: 5
User-agent: AhrefsBot
Disallow: /
User-agent: SemrushBot
Disallow: /
این کد به گوگل و بینگ اجازه خزش میدهد اما رباتهای ابزارهای سئو را کاملاً مسدود میکند (برای صرفهجویی در منابع سرور).
بهینهسازی برای سایتهای چندزبانه
User-agent: *
Disallow: /en/admin/
Disallow: /fa/admin/
Disallow: /ar/admin/
Sitemap: https://yoursite.com/sitemap-en.xml
Sitemap: https://yoursite.com/sitemap-fa.xml
Sitemap: https://yoursite.com/sitemap-ar.xml
محافظت از محتوای حساس
User-agent: *
Disallow: /confidential/
Disallow: /internal-docs/
Disallow: /beta/
Disallow: /staging/
هشدار امنیتی: robots.txt یک ابزار امنیتی نیست! هر کسی میتواند آن را ببیند. برای محافظت واقعی از محتوا، از احراز هویت (password protection) استفاده کنید.
نظارت و بهروزرسانی مداوم
فایل robots.txt یک چیز “بساز و فراموش کن” نیست. باید به طور مرتب آن را بررسی کنید.
چکلیست ماهانه
- [ ] بررسی گزارش Coverage در Search Console
- [ ] بررسی خطاهای خزش
- [ ] تست URLهای جدید با robots.txt tester
- [ ] بررسی لاگهای سرور برای فعالیت رباتها
- [ ] بهروزرسانی Sitemap در صورت تغییرات
علائم هشداردهنده که نیاز به بررسی دارند
- کاهش ناگهانی صفحات ایندکس شده
- افزایش خطاهای “Blocked by robots.txt” در Search Console
- کاهش ترافیک ارگانیک بدون دلیل مشخص
- صفحات جدید که ایندکس نمیشوند
ابزارهای کمکی برای مدیریت Robots.txt
افزونههای وردپرس پیشنهادی
- Yoast SEO: ویرایشگر ساده و کاربرپسند
- Rank Math: ویرایشگر پیشرفته با پیشنهادات هوشمند
- All in One SEO: مناسب برای مبتدیان
ابزارهای آنلاین
- Google Search Console: تست و نظارت رسمی
- Bing Webmaster Tools: تست برای Bing
- Screaming Frog: تحلیل عمیق خزش
- Robots.txt Generator: ساخت خودکار فایل
سؤالات متداول (FAQ)
آیا هر سایتی باید حتماً فایل robots.txt داشته باشد؟
اگر فایل robots.txt را اشتباه پیکربندی کنم، چه اتفاقی میافتد؟
آیا robots.txt میتواند از هک شدن سایت جلوگیری کند؟
چرا صفحات مسدود شده در robots.txt هنوز در گوگل نمایش داده میشوند؟
تفاوت Disallow و Noindex چیست؟
| ویژگی | Disallow (در robots.txt) | Noindex (متاتگ) |
|---|---|---|
| جلوگیری از خزش | بله | خیر |
| جلوگیری از ایندکس | خیر | بله |
| گوگل صفحه را میبیند | خیر | بله |
| کاربرد | صرفهجویی در Crawl Budget | حذف از نتایج جستجو |
نکته مهم: هرگز هر دو را با هم استفاده نکنید! اگر صفحه را در robots.txt مسدود کنید، گوگل نمیتواند متاتگ noindex را ببیند.
آیا میتوانم چند فایل robots.txt داشته باشم؟
خیر! فقط یک فایل robots.txt در ریشه اصلی سایت (https://example.com/robots.txt) معتبر است. اگر سایت چندزبانه دارید، باز هم فقط یک فایل در ریشه اصلی کافی است.
برای سابدامینها: هر سابدامین میتواند robots.txt مخصوص خودش را داشته باشد:
https://example.com/robots.txt https://blog.example.com/robots.txt https://shop.example.com/robots.txt
Crawl Budget چیست و چرا مهم است؟
Crawl Budget تعداد صفحاتی است که گوگل در یک بازه زمانی مشخص از سایت شما میخزد. این بودجه محدود است و بستگی به عواملی مثل:
- اعتبار و اقتدار سایت
- سرعت سرور
- کیفیت محتوا
- تعداد خطاها
چرا مهم است؟ اگر بودجه خزش روی صفحات بیارزش هدر برود، صفحات مهم شما دیر ایندکس میشوند. با robots.txt میتوانید این بودجه را بهینه کنید.
نتیجهگیری
فایل robots.txt شاید کوچکترین فایل سایت شما باشد، اما یکی از تأثیرگذارترین ابزارها برای سئو است. با درک صحیح و پیکربندی دقیق آن، میتوانید:
بودجه خزش را بهینه کنید و گوگل را به سمت محتوای ارزشمند هدایت کنید.
- سرعت ایندکس شدن را تا 3 برابر افزایش دهید
- از ایندکس محتوای تکراری و بیارزش جلوگیری کنید
- کنترل کاملی روی نحوه دیده شدن سایت توسط موتورهای جستجو داشته باشید
نکات کلیدی که باید به خاطر بسپارید:
- همیشه تست کنید: قبل از انتشار هر تغییری، با ابزار Google Search Console تست کنید
- ساده نگه دارید: پیچیدهتر لزوماً بهتر نیست. فقط آنچه واقعاً نیاز دارید را مسدود کنید
- Sitemap را فراموش نکنید: این سادهترین راه برای تسریع خزش است
- بهروز نگه دارید: robots.txt یک چیز “بساز و فراموش کن” نیست
- از اشتباهات رایج دوری کنید: به خصوص مسدود کردن کل سایت یا فایلهای CSS/JS
- امنیت را جدی بگیرید: robots.txt ابزار امنیتی نیست، برای محافظت واقعی از احراز هویت استفاده کنید
- نظارت مداوم: گزارشهای Search Console را منظم بررسی کنید
گام بعدی شما چیست؟
اگر تا اینجا خواندید، الان بهترین زمان برای عمل است:
- همین الان به
yoursite.com/robots.txtبروید و ببینید چه دارید - با ابزار Google Search Console آن را تست کنید
- بر اساس نوع سایتتان (وبلاگ، فروشگاه، خبری) یک الگوی بهینه پیادهسازی کنید
- Sitemap خود را اضافه کنید
- بعد از یک هفته، گزارش Coverage را بررسی کنید و ببینید آیا بهبود یافته است
یادتان باشد: سئو یک مسابقه ماراتن است، نه دو سرعت. تغییرات کوچک و مداوم در نهایت به نتایج بزرگ منجر میشوند. فایل robots.txt شما اولین قدم در این مسیر است.


