فایل robots.txt یکی از بخشهای زیرساختی سایت است که مسیر حرکت رباتهای موتور جستجو را تعیین میکند. تنظیم درست این فایل به شما کمک میکند تا خزندگان گوگل را به سمت صفحات ارزشمند هدایت کرده و از بررسی بخشهای تکراری یا بیارزش جلوگیری کنید. در این مقاله، نحوه ساخت، تنظیم دستورات و روشهای تست این فایل را به صورت گامبهگام بررسی میکنیم تا از ایندکس شدن صحیح محتوای سایت خود مطمئن شوید.
فایل robots.txt چیست؟
فایل robots.txt یک فایل متنی ساده با پسوند .txt است که در ریشه سایت شما قرار میگیرد و به رباتهای موتور جستجو میگوید اجازه بازدید از کدام صفحات را دارند و از کدام صفحات نباید دیدن کنند. این فایل در واقع اولین ایستگاهی است که ربات گوگل (Googlebot) هنگام ورود به سایت شما به آن مراجعه میکند. اگر بخواهم به زبان ساده بگویم، این فایل مثل یک نقشهراه برای خزندگان گوگل است. ما این فایل استفاده میکنیم تا به گوگل بگوییم: «وقتت را تلف نکن! مستقیم برو سراغ محتوای اصلی و بخشهایی که مهم نیست را نادیده بگیر.»
تفاوت robots.txt با متا تگ robots و noindex
تفاوت اصلی در “سطح دسترسی” است؛ robots.txt از ورود ربات به صفحه جلوگیری میکند، اما متا تگ noindex اجازه ورود را میدهد ولی میگوید صفحه را در نتایج نشان نده.
بسیاری از دوستان در پروژهها به اشتباه فکر میکنند اگر صفحهای را در این فایل بستند، دیگر در گوگل دیده نمیشود. اما اگر آن صفحه از جای دیگری لینک داشته باشد، ممکن است گوگل باز هم آن را ایندکس کند. پس برای حذف قطعی از گوگل، باید از تگ noindex استفاده کرد، نه فقط robots.txt.
دلیل اهمیت فایل robots.txt برای سئو سایت
دلیل اصلی اهمیت این فایل، مدیریت بودجه خزش یا Crawl Budget است تا رباتهای گوگل به جای صفحات بیارزش، صفحات پولساز شما را بررسی کنند. هر سایت ظرفیت محدودی برای بررسی شدن توسط گوگل دارد.
اگر سایت شما ۱۰۰۰ صفحه دارد و ۲۰۰ صفحه آن بیارزش (مثل پنل کاربری یا سبد خرید) است، نباید اجازه دهید گوگل انرژیاش را آنجا صرف کند. ما با تنظیم درست این فایل، سرعت ایندکس مقالات جدید را بالا میبریم.
کلمات کلیدی و مفاهیم اصلی در ساختار فایل robots.txt
در اینجا یک جدول کاربردی برای درک دستورات اصلی که ما در دیام روم استفاده میکنیم، آماده کردهام:
| دستور (Command) | کاربرد | مثال |
|---|---|---|
| User-agent | مشخص میکند دستور برای کدام ربات است | User-agent: * (برای همه رباتها) |
| Disallow | مسیر ممنوعه را مشخص میکند | Disallow: /wp-admin/ |
| Allow | اجازه دسترسی به یک زیرشاخه در پوشه ممنوعه | Allow: /wp-admin/admin-ajax.php |
| Sitemap | آدرس نقشه سایت را به ربات معرفی میکند | Sitemap: https://site.com/sitemap_index.xml |
اجزای اصلی تشکیلدهنده فایل robots.txt
برای نوشتن این فایل، باید با سه دستور کلیدی آشنا باشید:
۱. User-agent تعیین هدف
اول باید مشخص کنید با کدام ربات حرف میزنید.
- اگر میخواهید دستورات برای همه رباتها اجرا شود، از ستاره (*) استفاده کنید زمانی که از (*) استفاده میکنید به معنی دسترسی به تمامی باتها هست:
- اگر فقط با ربات گوگل کار دارید:
۲. Disallow دستور ممنوعیت
این بخش به ربات میگوید: «وارد این کوچه نشو!». هر مسیری که جلوی این دستور بنویسید، توسط رباتها خزش نمیشود.
- بستن کل سایت (توصیه نمیشود مگر در سایتهای در حال توسعه)
- بستن یک دسته یا صفحه خاص (مثلاً پنل مدیریت):
۳. Allow دستور اجازه
دستور Allow در فایل robots.txt به موتورهای جستجو میگوید که دسترسی به یک مسیر یا فایل خاص مجاز است، حتی اگر پوشه یا دایرکتوری والد آن به طور کلی توسط دستور Disallow مسدود شده باشد.
فرض کنید در سایت خود پوشهای به نام images دارید که نمیخواهید رباتهای موتور جستجو همهی فایلهای آن را بررسی کنند، اما میخواهید فقط فایل لوگو همچنان قابل دسترس باشد. در این حالت میتوانید در فایل robots.txt به شکل زیر عمل کنید:
4. Sitemap نقشه سایت
یکی از هوشمندانهترین کارها در robots.txt این است که آدرس نقشه سایت (Sitemap) خود را در انتهای فایل قرار دهید. این کار مثل این است که به ربات بگویید: «لازم نیست وقتت را در بخشهای غیرضروری تلف کنی؛ مستقیم از این لیست استفاده کن تا خیلی سریع همه صفحات مهم سایت را پیدا و بررسی کنی».
صفحاتی که توصیه میشود Disallow باشند در فایل robots
به طور کلی، هر صفحهای که محتوای اختصاصی ندارد یا اطلاعات حساس را نمایش میدهد، باید برای رباتها بسته شود. هدف ما این است که گوگل وقتش را روی صفحات تکراری یا سیستمی تلف نکند و مستقیم سراغ مطالب اصلی و محصولات سایت برود. در ادامه، مواردی که بهتر است بسته بمانند را بررسی میکنیم:
حساب کاربری
این صفحه شامل اطلاعات شخصی کاربران مثل نام، آدرس، تاریخچه سفارشات و جزئیات پروفایل است. محتوای این صفحه برای هر کاربر متفاوت است و دلیلی ندارد گوگل آن را ببیند و برای حفظ حریم خصوصی بهتر هست که بسته باشد.
کدهای JSON
این مسیر مربوط به کدهای JSON است که وردپرس برای ارتباط با اپلیکیشنها یا سایر سایتها استفاده میکند. این مسیر اطلاعاتی درباره ساختار سایت و کاربران به صورت متنی (کد) ارائه میدهد که برای گوگل سودی ندارد اما میتواند مورد سوءاستفاده رباتهای مخرب قرار بگیرد.
صفحات نویسنده
صفحهای که تمام مقالات نوشته شده توسط یک نویسنده خاص را لیست میکند.محتوای این صفحه دقیقاً همان مقالاتی است که در صفحه اصلی یا دستهبندیها وجود دارد. گوگل از سایتهایی که صفحات تکراری زیاد دارند خوشش نمیآید.
feed
کدهایی که برای خبرخوانها (RSS) تولید میشوند تا کاربران بدون باز کردن سایت، مطالب جدید را بخوانند. گوگل وقت محدودی برای بررسی سایت شما دارد. نباید این وقت صرف بررسی کدهای فید شود که برای کاربر در نتایج جستجو جذابیتی ندارند.
فایلهای HTML
این دستور یعنی هر آدرسی که در آخرش به .html ختم میشود را بررسی نکن. اگر سایت شما وردپرسی است و آدرسهای شما تمیز هستند (مثل site.com/post-1) اما فایلهای قدیمی یا آزمایشی با پسوند .html روی هاست دارید، با این کار به گوگل میگویید آن فایلهای قدیمی و بیارزش را ایندکس نکند.
page
صفحاتی مثل site.com/page/2/ که در ادامه صفحه اصلی یا آرشیوها میآیند. شما میخواهید گوگل صفحه اول سایت (که مهمتر است) را خوب بشناسد، نه اینکه در صفحات دوم و سوم که محتوای قدیمی و در حال تغییر دارند چرخ بزند.
cart
صفحهای که کاربر قبل از پرداخت، کالاهای خود را در آن میبیند. سبد خرید برای هر نفر متفاوت و خالی/پر است. ایندکس شدن آن در گوگل کاملاً بیمعنی است و فقط باعث میشود ربات گوگل وقتش را تلف کند.
نکاتی که باید زمان نوشتن فایل robots رعایت کنید
رعایت استانداردهای نگارشی و امنیتی در تنظیم robots.txt، مرز باریک بین بهینهسازی هوشمندانه و از دست رفتن دسترسیهای حیاتی سایت است. برای جلوگیری از خطاهای رایج که میتواند کل استراتژی سئو شما را مختل کند، حتماً موارد زیر را با دقت در فایل خود پیادهسازی کنید:
حساسیت به حروف کوچک و بزرگ
یکی از رایجترین اشتباهات وبمسترها، نادیده گرفتن بزرگی و کوچکی حروف است. سرورهای لینوکسی بین /Admin و /admin تفاوت قائل میشوند. اگر آدرس پنل مدیریت شما با حروف کوچک است اما در فایل robots آن را با حرف بزرگ بنویسید، دستور شما عملاً نادیده گرفته میشود و ربات گوگل همچنان به آن بخش دسترسی خواهد داشت.
عدم استفاده به عنوان ابزار امنیتی
باید بدانید که robots.txt یک دیوار دفاعی نیست، بلکه بیشتر شبیه به یک تابلوی «ورود ممنوع» است که فقط رباتهای قانونمند (مثل گوگل و بینگ) به آن احترام میگذارند. از آنجایی که این فایل برای همه عموم قابل مشاهده است، قرار دادن مسیرهای حساس در آن میتواند مثل یک نقشهراه برای هکرها عمل کند. برای امنیت واقعی، باید از رمزگذاری روی دایرکتوریها (Directory Privacy) استفاده کنید.
محدودیت در تعداد و محل قرارگیری فایل
هر دامنه یا سابدامنه فقط و فقط میتواند یک فایل robots.txt داشته باشد. این فایل حتماً باید در ریشه اصلی سایت (Root Directory) قرار بگیرد تا آدرس آن به صورت yourdomain.com/robots.txt باشد. اگر فایل را در پوشههای جانبی قرار دهید، توسط موتورهای جستجو شناسایی و خوانده نخواهد شد.
نمونه فایل robots.txt برای وردپرس
در این بخش یک نمونه استاندارد و بهینه را قرار دادهایم که از اتلاف بودجه خزش جلوگیری کرده و دسترسی رباتها به بخشهای حیاتی سایت را مدیریت میکند. شما میتوانید از این کد به عنوان الگوی اولیه استفاده کنید؛ فقط دقت داشته باشید که آدرس نقشه سایت (Sitemap) را در انتهای آن با آدرس دقیق سایت خود جایگزین نمایید.
نحوه تست و عیبیابی فایل Robots.txt
تست و عیبیابی درست فایل robots.txt حیاتیترین مرحله پس از نگارش آن است؛ زیرا یک اشتباه کوچک میتواند باعث شود صفحات مهم سایت شما از نتایج گوگل حذف شوند. در ادامه، روشهای تست و مفهوم خطاهای رایج را به صورت کاملتر توضیح میدهم:
بررسی مستقیم در مرورگر
سادهترین راه برای اطمینان از اینکه فایل به درستی آپلود شده، این است که آدرس سایت خود را به صورت زیر در مرورگر وارد کنید: yourdomain.com/robots.txt
- اگر با خطای ۴۰۴ مواجه شدید، یعنی فایل در مسیر درست (Root) قرار ندارد.
- اگر محتوای فایل را دیدید، مطمئن شوید که کلمات کلیدی مثل (User-agent) غلط املایی ندارند.
تست فایل robots با ابزار TechnicalSEO
علاوه بر روشهای رسمی، یکی از بهترین ابزارهایی که ما در پروژههای تخصصی برای اطمینان از صحت کدها استفاده میکنیم، ابزار وب سایت TechnicalSEO Robots.txt Tester است. این سایت به شما اجازه میدهد پیش از آنکه فایل را روی هاست خود آپلود کنید، آن را در یک محیط آزمایشگاهی شبیهسازی کنید.
خطای Indexed, though blocked در سرچ کنسول
این یکی از هشدارهای (Warning) مهم در گوگل سرچ کنسول است. بیایید آن را کالبدشکافی کنیم:
- معنی خطا: این خطا به این معنی است که گوگل آدرس صفحه شما را در نتایج جستجو ثبت کرده است، اما به دلیل محدودیتهایی که در فایل robots.txt قرار دادهاید، اجازه دسترسی به محتوای داخل آن صفحه و خزش (Crawl) کردن آن را نداشته است. در واقع گوگل متوجه وجود این صفحه شده (مثلاً از طریق لینکهای داخلی یا سایتهای دیگر)، اما نتوانسته محتویات آن را برای درک بهتر بررسی کند.
- چرا این اتفاق میافتد؟ وقتی گوگل از طریق لینکهای داخلی یا سایتهای دیگر به یک صفحه میرسد، آن را ایندکس میکند. اما چون شما دسترسی را در robots.txt بستهاید، گوگل نمیتواند محتوای صفحه را بخواند تا بفهمد دقیقاً درباره چیست.
- راه حل: اگر میخواهید صفحه اصلاً در گوگل نباشد: نباید آن را در robots.txt ببندید! بلکه باید دسترسی را باز بگذارید و در خودِ صفحه از تگ noindex استفاده کنید. اگر میخواهید صفحه فقط خزش نشود اما در نتایج بماند (که معمولاً توصیه نمیشود)، میتوانید دستور را حفظ کنید.
اشتباهات رایج زمان نوشتن فایل robots
- بستن کل سایت: نوشتن /:Disallow یعنی کل سایت شما از گوگل حذف شود! (فقط زمان طراحی سایت از این کد استفاده کنید).
- استفاده برای امنیت: هرگز رمزهای عبور یا مسیرهای حساس امنیتی را در اینجا ننویسید، چون این فایل برای همه عمومی است.
- غلط املایی: به حروف بزرگ و کوچک حساس باشید. Robots.txt درست نیست، فقط robots.txt.
سخن آخر
فایل robots.txt در ظاهر یک فایل متنی ساده و چند کیلوبایتی است، اما در واقعیت، مدیریت هوشمندانه بودجه خزش و امنیت سئو سایت شما را بر عهده دارد. همانطور که در این مقاله بررسی کردیم، این فایل نه یک ابزار امنیتی است و نه تضمینی برای حذف محتوا از گوگل؛ بلکه تنها یک «زبان مشترک» میان شما و خزندههای موتور جستجوست.
فراموش نکنید که یک اشتباه تایپی کوچک یا یک دستور اشتباه در این فایل، میتواند تمام زحمات شما در تولید محتوا را از دید گوگل پنهان کند. بنابراین:
- همیشه بعد از تغییرات، فایل خود را تست کنید.
- تفاوت بین Disallow و noindex را جدی بگیرید.
- و هرگز صفحات مهم و پولساز سایتتان را به اشتباه مسدود نکنید.
با مدیریت درست این فایل، شما به گوگل کمک میکنید تا سریعتر، دقیقتر و بهینهتر سایت شما را بشناسد و محتوای باارزشتان را به کاربران نشان دهد.
سوالات متداول
چقدر زمان میبرد تا تغییرات فایل robots.txt توسط گوگل اعمال شود؟
تغییرات به صورت لحظهای نیست. گوگل معمولاً هر ۲۴ ساعت یکبار فایل شما را چک میکند. اما اگر عجله دارید، میتوانید از طریق ابزار Robots.txt Tester در گوگل سرچ کنسول، نسخه جدید را “Submit” کنید تا گوگل سریعتر از تغییرات باخبر شود.
اگر صفحهای را در robots.txt ببندم، آیا از نتایج گوگل حذف میشود؟
خیر، لزوماً حذف نمیشود. اگر سایتهای دیگر به آن صفحه لینک داده باشند، گوگل ممکن است آدرس صفحه را در نتایج نشان دهد اما محتوای آن را خزش نمیکند. برای حذف کامل و قطعی یک صفحه از نتایج جستجو، باید از تگ noindex در کد HTML آن صفحه استفاده کنید.
اگر فایل robots.txt نداشته باشیم چه اتفاقی میافتد؟
اگر این فایل وجود نداشته باشد، رباتهای گوگل فرض را بر این میگذارند که اجازه دسترسی به تمام بخشهای سایت را دارند. برای سایتهای کوچک مشکل خاصی ایجاد نمیشود، اما در سایتهای بزرگ باعث هدر رفتن “بودجه خزش” (Crawl Budget) روی صفحات بیارزش میشود.
آیا robots.txt روی رتبه سایت تاثیر مستقیم دارد؟
خیر، این فایل رتبه شما را مستقیماً بالا نمیبرد، اما با بهینهسازی مسیر حرکت رباتها، باعث میشود صفحات مهم زودتر دیده شده و در نتیجه سئو سایت بهبود یابد.
