تا حالا شده یه روز ببینین صفحات سایتتون توی گوگل دیده نمیشن، ولی ندونین مشکل از کجاست؟ یا برعکس، یه سری صفحات بی‌اهمیت مثل سبد خرید یا پنل مدیریت، سر از نتایج جستجو درآوردن؟ خیلی وقت‌ها ریشه این اتفاق‌ها به یه فایل چند خطی برمی‌گرده که کمتر بهش توجه میشه: فایل Robots.txt.

این فایل ساده، درست همون جایی قرار می‌گیره که ربات‌های موتورهای جستجو قبل از ورود به سایت سر می‌زنن. یعنی قبل از اینکه حتی یه صفحه بررسی بشه، اول قوانین خونده میشه. اگه این قوانین درست تنظیم شده باشن، مسیر حرکت ربات‌ها مدیریت میشه، بودجه خزش هدر نمیره و صفحات مهم شانس بیشتری برای دیده شدن پیدا می‌کنن. اما اگه اشتباهی داخلش وجود داشته باشه، ممکنه کل سایت ناخواسته از دسترس گوگل خارج بشه.

توی این مقاله قراره دقیق و مرحله‌به‌مرحله بررسی بشه که فایل Robots.txt چیه، چطور با موتورهای جستجو حرف می‌زنه، چه دستورات مهمی داخلش استفاده میشه، چرا برای سایت‌های متوسط و بزرگ تقریباً ضروریه، چه صفحاتی بهتره داخلش محدود بشن و چه اشتباهاتی می‌تونه فاجعه‌بار باشه. همچنین تفاوتش با Meta Robots روشن میشه، روش بررسی و تستش گفته میشه و در نهایت یاد گرفته میشه چطور یه فایل استاندارد و بدون ریسک ساخته بشه.

فایل Robots.txt چیه و به چه دردی می‌خوره؟

فایل Robots.txt در واقع یه فایل متنی خیلی ساده‌ست که داخل ریشه اصلی سایت قرار داده میشه (مثلاً example.com/robots.txt) تا یه سری قوانین مشخص برای ربات‌های موتورهای جستجو تعریف بشه. داخل این فایل تعیین میشه که کدوم بخش‌های سایت اجازه بررسی دارن و کدوم بخش‌ها نباید توسط ربات‌ها بررسی یا خزش بشن.

این فایل ظاهر پیچیده‌ای نداره و فقط شامل چند خط دستور متنیه، اما نقش مهمی توی مدیریت رفتار ربات‌ها ایفا می‌کنه. به کمک همین چند خط ساده میشه مسیر حرکت ربات‌ها داخل سایت رو تا حد زیادی کنترل کرد و مشخص کرد تمرکز خزش روی چه صفحاتی باشه.

وقتی ربات‌های موتورهای جستجو مثل گوگل یا بینگ وارد یه سایت می‌شن، قبل از اینکه شروع به بررسی صفحات کنن، اول از همه فایل Robots.txt رو چک می‌کنن. اگه این فایل وجود داشته باشه و داخلش دستور خاصی نوشته شده باشه، معمولاً همون دستورات به عنوان قانون در نظر گرفته میشه و بر اساس اون‌ها رفتار می‌کنن.

در واقع میشه گفت این فایل یه جور «تابلوی راهنما برای ربات‌ها»ست که جلوی درِ سایت نصب شده. ربات‌ها قبل از ورود کامل، این تابلو رو می‌خونن تا بفهمن اجازه رفتن به کجا رو دارن و از کجا باید دوری کنن. اگر هم فایلی وجود نداشته باشه، ربات‌ها فرض می‌کنن محدودیتی تعریف نشده و آزادانه کل سایت رو بررسی می‌کنن.

فایل Robots.txt چطور با موتورهای جستجو حرف می‌زنه؟

ارتباط از طریق چند دستور ساده برقرار میشه. داخل فایل مشخص میشه که:

  • کدوم ربات مخاطب هست

  • اجازه دسترسی به چه مسیری داده میشه

  • دسترسی به چه مسیری محدود میشه

مثال ساده:

User-agent: *

Disallow: /admin/

اینجا اعلام شده که این دستور برای همه ربات‌ها نوشته شده و هیچ رباتی اجازه ورود به پوشه admin رو نداره. یعنی هر رباتی که وارد سایت بشه، قبل از شروع خزش متوجه میشه که این بخش از سایت برای بررسی در دسترس نیست و باید از اون عبور کنه. به همین سادگی میشه با چند خط دستور، رفتار ربات‌ها رو تا حد زیادی کنترل و مدیریت کرد.

ساختار کامل دستورات Robots.txt به زبان ساده

فایل Robots.txt در ظاهر خیلی ساده به نظر می‌رسه، اما وقتی ساختارش درست و دقیق رعایت بشه، می‌تونه کنترل کاملی روی رفتار ربات‌ها ایجاد کنه و بودجه خزش سایت رو بهینه کنه. ساختار کامل دستورات این فایل شامل چند بخش اصلیه که هر کدوم نقش مشخصی دارن و با رعایت اون‌ها میشه مطمئن شد ربات‌ها طبق خواسته ما عمل می‌کنن.

1. User-agent

این دستور مشخص می‌کنه که قوانین نوشته شده برای کدوم ربات اعمال میشه. میشه یه دستور عمومی برای همه ربات‌ها نوشت (User-agent: *) یا دستور خاص برای هر ربات جداگانه، مثل Googlebot، Bingbot یا Googlebot-Image. با این کار میشه کنترل دقیق روی رفتار هر ربات داشت و تعیین کرد کدوم مسیرها بررسی بشن و کدوم مسیرها محدود بشن.

2. Allow

این دستور مسیرهایی که ربات‌ها اجازه دارن بررسی کنن رو مشخص می‌کنه. معمولاً وقتی مسیرهای والد بسته هستن ولی بخشی از اون مسیر باید در دسترس ربات باشه، از Allow استفاده می‌کنن. به این شکل میشه جزئیات دسترسی‌ها رو دقیق تعریف کرد و اطمینان حاصل کرد که صفحات مهم از خزش حذف نمی‌شن.

3. Disallow

برعکس Allow، این دستور مسیرهایی که نباید توسط ربات‌ها بررسی بشه رو مشخص می‌کنه. میشه کل پوشه‌ها یا فایل‌های خاصی رو مسدود کرد، مثل پنل مدیریت، صفحات فیلتر محصولات، صفحات موقت یا آزمایشی. این کار کمک می‌کنه ربات‌ها وقتشون روی صفحات مهم‌تر صرف بشه و صفحات کم‌اهمیت یا تکراری ایندکس نشن.

4. Sitemap

در انتهای فایل معمولاً آدرس نقشه سایت یا Sitemap اضافه میشه تا ربات‌ها بتونن به راحتی ساختار کلی سایت رو ببینن و مسیرهای مهم‌تر رو بهتر شناسایی کنن. این کار باعث میشه خزش هدفمندتر و دقیق‌تر انجام بشه و صفحات مهم سریع‌تر ایندکس بشن.

5. قوانین ترکیبی و چندگانه

می‌تونیم ترکیبی از دستورات Allow و Disallow برای هر User-agent داشته باشیم تا کنترل دقیقی روی مسیرهای باز و بسته ایجاد بشه. همچنین میشه دستورهای مختلف برای ربات‌های متفاوت نوشت تا هر ربات فقط به بخش‌هایی که براش تعیین شده دسترسی داشته باشه.

معرفی User-agent های مهم در فایل  Robots.txt

دستور User-agent در فایل Robots.txt نقش بسیار مهمی داره و در واقع مشخص می‌کنه هر بخش از دستورات داخل فایل برای کدوم ربات نوشته شده و چه رباتی باید اون قوانین رو دنبال کنه. این بخش به ربات‌ها میگه که آیا اجازه دسترسی به مسیر مشخصی دارن یا باید از اون عبور کنن و به همین دلیل پایه اصلی کنترل رفتار ربات‌ها محسوب میشه. چند مورد از User-agent های مهم و رایج رو میشه به عنوان مثال نام برد:

  • Googlebot : این ربات، ربات اصلی گوگل هست که صفحات سایت رو بررسی و ایندکس می‌کنه. همه محتواها و صفحات عمومی توسط این ربات خزش میشن و تاثیر مستقیم روی رتبه سایت در نتایج جستجو دارن.

  • Googlebot-Image: این ربات مخصوص تصاویر هست و صفحات حاوی تصاویر رو بررسی می‌کنه تا تصاویر داخل نتایج جستجوی گوگل نمایش داده بشن. اگه مسیرهای مربوط به تصاویر اشتباه محدود بشن، ممکنه عکس‌ها در نتایج گوگل دیده نشن.

  • Bingbot: ربات موتور جستجوی بینگ هست که مشابه گوگل عمل می‌کنه و صفحات رو خزش و ایندکس می‌کنه، مخصوصاً برای کاربرانی که از بینگ استفاده می‌کنن اهمیت داره.

نکته مهم اینه که اگه نیاز باشه، میشه برای هر ربات دستور جداگانه نوشت و قوانین متفاوتی براش تعریف کرد. مثلاً ممکنه به Googlebot اجازه داده بشه همه صفحات رو خزش کنه، ولی Bingbot فقط بخش‌های خاصی رو بررسی کنه. 

این امکان انعطاف بالایی به مدیر سایت میده تا کنترل دقیقی روی رفتار هر ربات داشته باشه و بودجه خزش سایت بهینه مصرف بشه. به همین دلیل، استفاده درست از User-agent بخش کلیدی تنظیمات فایل Robots.txt به حساب میاد و یکی از ابزارهای مهم برای مدیریت حرفه‌ای سایت محسوب میشه.

چرا داشتن فایل Robots.txt برای سایت‌هامون مهمه؟

با استفاده درست از فایل Robots.txt می‌تونه کنترل بهتری روی نحوه خزش سایت اعمال بشه و مدیریت سایت از نظر سئو حرفه‌ای‌تر انجام بشه. هر کدوم از مزایای این فایل، اگر درست پیاده‌سازی بشه، تأثیر مشخصی روی عملکرد سایت داخل نتایج جستجو می‌ذاره. در ادامه هر مورد جداگانه توضیح داده میشه:

  • بودجه خزش سایت بهتر مدیریت میشه

هر سایت یه مقدار مشخصی «بودجه خزش» داره؛ یعنی موتورهای جستجو زمان و منابع محدودی رو برای بررسی صفحات اون سایت اختصاص میدن. اگه این بودجه صرف صفحات بی‌اهمیت، فیلترها، جستجوهای داخلی یا مسیرهای تکراری بشه، ممکنه صفحات مهم دیرتر بررسی یا حتی نادیده گرفته بشن. با تنظیم درست Robots.txt میشه مسیرهای غیرضروری رو بست تا ربات‌ها وقتشون رو روی صفحات مهم‌تر مثل مقالات، محصولات یا صفحات اصلی صرف کنن. این کار باعث میشه انرژی خزش هدر نره و اولویت‌ها دقیق‌تر رعایت بشه.

  • صفحات بی‌ارزش کمتر ایندکس میشن

بعضی صفحات ارزش حضور در نتایج گوگل رو ندارن؛ مثل صفحات سبد خرید، پنل کاربری، نتایج جستجوی داخلی یا صفحات آزمایشی. اگر این صفحات کنترل نشن، ممکنه توسط ربات‌ها بررسی بشن و حتی در نتایج دیده بشن. با استفاده درست از Robots.txt میشه دسترسی ربات‌ها به این مسیرها رو محدود کرد تا احتمال ایندکس شدنشون کمتر بشه. این موضوع باعث میشه تصویر حرفه‌ای‌تری از سایت داخل نتایج جستجو نمایش داده بشه و صفحات کم‌اهمیت وارد رقابت اصلی نشن.

  • ساختار سایت برای موتورهای جستجو واضح‌تر میشه

وقتی مسیرهای مهم باز گذاشته میشن و مسیرهای اضافی بسته میشن، یه ساختار مشخص و منظم برای ربات‌ها ایجاد میشه. در واقع به موتورهای جستجو نشون داده میشه که کدوم بخش‌ها اولویت دارن و کدوم بخش‌ها فرعی محسوب میشن. این شفاف‌سازی باعث میشه درک بهتری از معماری سایت شکل بگیره و فرآیند بررسی صفحات هدفمندتر انجام بشه. نتیجه این کار معمولاً ایندکس شدن دقیق‌تر صفحات اصلی و مهم سایته.

  • از بررسی صفحات تکراری جلوگیری میشه

در خیلی از سایت‌ها، مخصوصاً فروشگاهی یا محتوایی، ممکنه یک صفحه با چند URL مختلف در دسترس باشه؛ مثلاً به خاطر پارامترهای فیلتر یا مرتب‌سازی. اگه این مسیرها کنترل نشن، ربات‌ها ممکنه چند نسخه مشابه از یک محتوا رو بررسی کنن. این موضوع هم بودجه خزش رو هدر میده و هم می‌تونه باعث ایجاد مشکل محتوای تکراری بشه. با بستن مسیرهای پارامتری یا فیلترها داخل Robots.txt میشه جلوی این خزش‌های تکراری رو گرفت و تمرکز رو روی نسخه اصلی صفحات نگه داشت.

در نظر داشته باشین که برای سایت‌های خیلی کوچیک با تعداد صفحات محدود، شاید وجود Robots.txt حیاتی نباشه و حتی بدون اون هم مشکلی جدی پیش نیاد. اما برای سایت‌های متوسط و بزرگ که صدها یا هزاران صفحه دارن، مدیریت درست این فایل کاملاً مهم و حتی ضروری محسوب میشه. هرچقدر ساختار سایت پیچیده‌تر باشه، نقش Robots.txt هم پررنگ‌تر میشه.

چه صفحاتی رو بهتره توی Robots.txt ببندیم؟

باید دقت بشه صفحات مهم یا درآمدزا اشتباهی مسدود نشن. معمولا بخش‌های پایین محدود میشن:

  • پنل مدیریت

  • صفحات جستجوی داخلی

  • صفحات فیلتر محصولات

  • صفحات آزمایشی

  • مسیرهای موقت

چه اشتباهاتی می‌تونه سایت منو از گوگل حذف کنه؟

اینجا حساس‌ترین بخش ماجرا شروع میشه و اگه دقت کافی به خرج داده نشه، ممکنه کل تلاش‌های سئو و ایندکس سایت به راحتی از بین بره. بزرگ‌ترین اشتباه اینه که داخل فایل Robots.txt به شکل زیر عمل بشه:

User-agent: *

Disallow: /

با این دستور، کل سایت مسدود میشه و هیچ رباتی اجازه بررسی هیچ صفحه‌ای از سایت رو نداره. یعنی عملاً سایت از نتایج جستجو حذف میشه و حتی صفحات اصلی و مهم هم دیده نمیشن. این یه اشتباه رایج و در عین حال خیلی خطرناک محسوب میشه، چون گاهی اوقات فقط یه خط اشتباه یا یه علامت اضافه، میتونه کل سایت رو غیرقابل دسترس کنه برای موتورهای جستجو.

اشتباهات رایج دیگه هم وجود دارن که معمولاً کمتر دیده میشن اما تأثیرشون میتونه به همون اندازه فاجعه‌بار باشه. یکی از این اشتباهات، اشتباه تایپی در مسیرهاست؛ یعنی وقتی مسیر یک پوشه یا فایل اشتباه وارد بشه، ربات‌ها نمی‌تونن درست عمل کنن و بخش‌های مهم نادیده گرفته میشن. اشتباه رایج دیگه اینه که تصور بشه دستور Disallow یعنی noindex؛ در حالی که Disallow فقط دسترسی ربات‌ها به مسیرها رو محدود می‌کنه و ربطی به ایندکس شدن یا نشدن صفحه نداره.

همچنین، بستن فایل‌های CSS و JS ضروری هم می‌تونه مشکلات بزرگی ایجاد کنه، چون موتورهای جستجو برای درک ساختار و ظاهر سایت به این فایل‌ها نیاز دارن. اگه این فایل‌ها بسته بشن، گوگل ممکنه تصور کنه سایت ناقص یا مشکل‌دار هست و صفحات درست ایندکس نشن. و مورد آخر هم اینکه خیلی از افراد فایل رو بدون تست تغییر میدن؛ یعنی هر تغییر کوچیک، بدون بررسی عملکرد ربات‌ها، اعمال میشه و نتیجه نهایی می‌تونه حذف شدن ناخواسته کل سایت از نتایج جستجو باشه.

فرق فایل Robots.txt با Meta Robots چیه؟

این دو مورد، یعنی فایل Robots.txt و تگ Meta Robots، خیلی وقت‌ها با هم اشتباه گرفته می‌شن، مخصوصاً برای افرادی که تازه با سئو و مدیریت سایت آشنا شدن. به همین دلیل بهتره هر کدوم جداگانه توضیح داده بشن تا تفاوتشون واضح بشه و سوءتفاهم پیش نیاد.

Robots.txt

این فایل یه فایل متنی ساده‌ست که داخل ریشه سایت قرار داده میشه و وظیفه اصلیش کنترل خزش ربات‌هاست. یعنی مشخص می‌کنه کدوم ربات اجازه داره وارد کدوم مسیرها بشه و کدوم مسیرها براش محدود شده. 

با کمک Robots.txt میشه مسیرهای غیرضروری، مثل پنل مدیریت، صفحات آزمایشی یا مسیرهای فیلتر محصولات، رو بست تا ربات‌ها وقتشون روی صفحات مهم‌تر صرف بشه. مهم‌ترین نکته اینه که این فایل فقط روی «دسترسی» تاثیر داره و به تنهایی نمیگه که صفحه باید ایندکس بشه یا نه، بلکه فقط ربات‌ها رو هدایت می‌کنه که کجا برن و کجا نرن.

Meta Robots

این مورد کاملا متفاوت عمل می‌کنه و داخل کد HTML هر صفحه قرار می‌گیره. وظیفه اصلی Meta Robots مشخص کردن وضعیت ایندکس و دنبال کردن لینک‌هاست. مثلاً میشه باهاش به گوگل گفت که این صفحه ایندکس نشه، یا لینک‌های داخلش دنبال نشن. برخلاف Robots.txt که روی کل مسیرها یا پوشه‌ها اعمال میشه، Meta Robots روی تک‌تک صفحات اعمال میشه و کنترل مستقیم روی ایندکس شدن محتوا داره.پس:

  • Robots.txt = مدیریت دسترسی ربات

  • Meta Robots = مدیریت ایندکس صفحه

در نتیجه کاربرد این دو کاملاً متفاوته و هیچ‌کدوم جای دیگری رو نمی‌گیرن. ترکیب درست هر دو می‌تونه کمک کنه که هم مسیر حرکت ربات‌ها کنترل بشه و هم ایندکس صفحات به شکل حرفه‌ای مدیریت بشه، بدون اینکه اشتباهی صفحات مهم از نتایج حذف بشن یا صفحات بی‌ارزش ایندکس بشن. این تفکیک دقیق خیلی مهمه، مخصوصا برای سایت‌های بزرگ و پیچیده که تعداد صفحات زیادی دارن و مدیریت درست هر دو ابزار، می‌تونه تاثیر مستقیم روی سئو و بودجه خزش داشته باشه.

چطور Robots.txt سایت خودمو بررسی کنم؟

بررسی فایل Robots.txt سایت، در واقع یکی از ساده‌ترین کارهایی هست که میشه برای اطمینان از وضعیت خزش و دسترسی ربات‌ها انجام داد و هیچ ابزار پیچیده‌ای هم نیاز نداره. برای این کار کافیه اول آدرس سایت رو همراه با /robots.txt/ داخل مرورگر وارد کنین، مثلا yoursite.com/robots.txt. با این کار مرورگر مستقیماً به فایل متنی Robots.txt دسترسی پیدا می‌کنه و میشه محتوای اون رو مشاهده کرد و دید چه دستورات و محدودیت‌هایی داخلش نوشته شده.

بعد از اینکه فایل داخل مرورگر باز شد و بررسی شد که دستورات درست هستن یا نه، مرحله بعدی استفاده از ابزارهای تستیه که گوگل و دیگر موتورهای جستجو ارائه دادن، مثل سرچ کنسول. داخل سرچ کنسول میشه فایل Robots.txt رو تست کرد و دید آیا مسیرها به درستی محدود شدن یا نه و ربات‌ها طبق دستورالعمل‌ها عمل می‌کنن یا خیر. این مرحله کمک می‌کنه اشتباهات تایپی یا مسیرهای نادرست شناسایی بشن و قبل از اینکه تاثیری روی ایندکس صفحات داشته باشن، اصلاح بشن.

اگر فایل باز نشه و هیچ محتوایی نمایش داده نشه، یعنی هنوز فایل Robots.txt ساخته نشده و موتورهای جستجو بدون هیچ محدودیتی می‌تونن کل سایت رو خزش کنن. این موضوع در سایت‌های کوچک ممکنه مشکلی ایجاد نکنه، اما در سایت‌های بزرگ و متوسط که مسیرهای زیادی دارن و بودجه خزش محدود هست، نبود این فایل می‌تونه باعث هدر رفتن منابع خزش و ایندکس شدن صفحات کم‌اهمیت بشه. 

چطور یک فایل Robots.txt استاندارد بسازم؟

برای ساخت دستی، این مراحل رو باید انجام بدی:

  1. یه فایل متنی با نام robots.txt بساز

  2. دستورات رو داخلش بنویس

  3. فایل رو داخل ریشه سایت یا همون public html  آپلود کن

  4. بعد از آپلود، تست بگیر

اسم فایل باید دقیقا robots.txt و با حروف کوچک باشه.

چند نمونه فایل Robots.txt آماده برای سایت‌های مختلف

سایت شرکتی ساده

User-agent: *

Disallow: /admin/

Sitemap: https://example.com/sitemap.xml

سایت وردپرسی

User-agent: *

Disallow: /wp-admin/

Allow: /wp-admin/admin-ajax.php

Sitemap: https://example.com/sitemap.xml

سایت فروشگاهی

User-agent: *

Disallow: /cart/

Disallow: /checkout/

Disallow: /*?filter=

Sitemap: https://example.com/sitemap.xml

ساخت فایل Robots.txt با تنبل‌باشی

اگه قرار نباشه وقت و انرژی خودمون رو صرف نوشتن دستی دستورات فایل Robots.txt کنیم، می‌تونیم از ابزار robots.txt ساز تنبل باشی  استفاده کنیم. این ابزار طوری طراحی شده که فرآیند ایجاد فایل رو به ساده‌ترین شکل ممکن انجام بده و نیاز به هیچ دانش فنی پیچیده‌ای نداشته باشه.  توی ابزار robots.txt ساز تنبل باشی، می‌تونی بگی که:

  • کدوم مسیرها بسته باشن
  • کدوم ربات‌ها محدود بشن
  • آدرس نقشه سایت چی باشه.

به جای اینکه تک‌تک خطوط دستور رو خودمون بنویسیم و نگران اشتباه تایپی یا خطاهای ناشی از فرمت باشیم، کافیه وارد ابزار بشیم و تنظیمات موردنظر رو مشخص کنیم.