Robotstxt | راهنمای کامل کنترل کراولرها و بهبود سئو
Robotstxt: راهنمای کامل کنترل کراولرها و بهبود سئو سایت
فایل robots.txt مثل یک پلیس راهنمایی و رانندگی برای سایت شماست که به ربات های موتورهای جستجو می گوید کجا بروند و کجا نروند. این فایل کوچک اما حیاتی، کمک می کند تا کنترل کاملی روی بخش های مختلف سایتتان داشته باشید و مانع خزش (Crawl) و ایندکس (Index) شدن صفحات بی اهمیت یا خصوصی شوید؛ با این کار، نه تنها در مصرف بودجه خزش گوگل صرفه جویی می کنید، بلکه صفحات مهم سایتتان زودتر و بهتر در نتایج جستجو دیده می شوند و سئوی سایتتان حسابی پیشرفت می کند.
تا حالا شده فکر کنید چرا بعضی صفحات سایت شما توی گوگل ایندکس نمیشن، یا چرا گوگل به جای محتواهای اصلی شما، سراغ یه سری صفحات بی اهمیت میره؟ داستان از این قراره که موتورهای جستجو مثل گوگل، با ربات هایی به اسم کراولر یا خزنده میان و سایت شما رو زیر و رو می کنن. این ربات ها وظیفه دارن همه صفحات رو پیدا کنن، بخونن و اطلاعاتشون رو به گوگل بدن تا بعداً توی نتایج جستجو نشون داده بشن. ولی خب، همیشه هم نمی خوایم همه جا رو ببینن، درسته؟
گاهی وقت ها لازمه یه جاهایی از سایتتون رو از دید این ربات ها قایم کنین یا بهشون بگین فلان بخش ها رو اصلاً نگاه نکنن. اینجاست که پای Robots.txt میاد وسط. این فایل کوچولو، به شما کمک می کنه تا مدیریت کنین ربات های گوگل به کجاها سر بزنن و به کجاها نه. با یه فایل robots.txt درست و حسابی، می تونید سئوی سایتتون رو حسابی بهینه کنین، حواستون به بودجه خزش (Crawl Budget) گوگل باشه و مطمئن بشین که مهم ترین صفحاتتون دارن مسیر درستی رو برای ایندکس شدن طی می کنن.
پس اگه می خواید یه راهنمای کامل و گام به گام برای ساخت، پیاده سازی و بهینه سازی robots.txt رو یاد بگیرین و سایتتون رو تو گوگل بهتر نشون بدین، تا آخر این مقاله با من همراه باشید. قراره همه چیز رو از سیر تا پیاز به زبان ساده و خودمونی براتون توضیح بدم.
Robots.txt چیست؟ درک عمیق پروتکل حذف ربات ها
ببینید، robots.txt در واقع یه فایل متنی خیلی ساده ست که توی ریشه (Root Directory) سایتتون قرار می گیره. اگه بخوایم یه مثال بزنیم، فرض کنین شما یه خونه دارین و جلوی در ورودی خونه یه تابلو گذاشتین که روش نوشتین: آقا پلیسه، لطفاً وارد اتاق پشتی نشو، اونجا یه عالمه وسایل به دردنخور هست! Robots.txt دقیقاً همون تابلوئه برای ربات های گوگل!
هدف اصلی این فایل اینه که به ربات های خزنده موتورهای جستجو (مثل Googlebot) بگه که به کدوم قسمت های سایتتون اجازه دسترسی دارن و به کدوم قسمت ها نه. این کار رو با استفاده از یک سری دستورالعمل های مشخص انجام میده. به این سیستم راهنمایی و رانندگی برای ربات ها، پروتکل حذف ربات ها (Robots Exclusion Protocol) میگن که یه استاندارد قدیمی و جاافتاده تو دنیای وب به حساب میاد.
۱.۱. تعریف Robots.txt: فایل متنی ساده و محرمانه!
پس، robots.txt یه فایل متنی (با فرمت .txt) هست که تو آدرس اصلی سایت شما قرار می گیره. مثلاً اگه آدرس سایتتون https://yourdomain.com باشه، فایل robots.txt شما باید تو آدرس https://yourdomain.com/robots.txt قابل دسترسی باشه. این خیلی مهمه که این فایل دقیقاً تو همین جایگاه (ریشه اصلی سایت) باشه، نه تو ساب دایرکتوری ها یا جاهای دیگه. چون ربات ها اولین جایی که دنبال این فایل می گردن، همین ریشه ست و اگه پیداش نکنن، فرض می کنن که همچین فایلی اصلاً وجود نداره!
۱.۲. نقش و هدف اصلی: راهنمایی برای ربات های سرگردان!
حالا این فایل دقیقاً چیکار می کنه؟ وظیفه اش اینه که ربات ها رو راهنمایی کنه. سایت های بزرگ با هزاران صفحه، کلی بخش های داخلی، فایل های سیستمی و صفحات بی اهمیت دارن که اصلاً نیازی نیست ربات ها اونا رو ببینن یا ایندکس کنن. Robots.txt میاد و به ربات ها میگه: فلان پوشه ادمین رو بیخیال شو، یا اون صفحات نتایج جستجوی داخلی رو اصلاً نگاه نکن. اینجوری هم ربات ها وقتشون رو تلف نمی کنن، هم شما انرژی سرورتون رو بیخود هدر نمیدین.
یه نکته مهم: robots.txt فقط یک پیشنهاد یا راهنمایی برای ربات هاست، نه یه دستور قطعی امنیتی. یعنی ربات های خوب و معروف موتورهای جستجو (مثل گوگل و بینگ) به این فایل احترام می ذارن و طبقش عمل می کنن. اما ربات های بدجنس یا اسپمرها ممکنه اصلاً بهش توجهی نکنن. پس برای امنیت اطلاعات حساس، هیچ وقت فقط به robots.txt بسنده نکنین.
چرا Robots.txt برای سئو سایت شما حیاتی است؟ (کاربردها و مزایا)
شاید بگین یه فایل متنی کوچیک چقدر میتونه رو سئو تأثیر بذاره؟ راستش رو بخواین، خیلی بیشتر از اونی که فکرشو می کنین! Robots.txt یه جور اهرم قدرتمند برای سئو تکنیکال سایته که اگه درست ازش استفاده بشه، می تونه حسابی به دیده شدن سایتتون کمک کنه. بیاین ببینیم چطوری:
۲.۱. بهینه سازی بودجه خزش (Crawl Budget Optimization)
تصور کنین گوگل یه بودجه ی محدود برای هر سایتی داره. این بودجه مثل یه میزان بنزینه که گوگل برای خزش و بررسی صفحات سایت شما در یک بازه زمانی مشخص، مصرف می کنه. اگه سایت شما هزاران صفحه داشته باشه و گوگل فقط بتونه ۱۰۰ تا از اونا رو تو یه روز بررسی کنه، بقیه صفحاتتون چی میشن؟ باید منتظر باشن تا بودجه خزش جدید برسه! به این می گن بودجه خزش یا Crawl Budget.
۲.۱.۱. بودجه خزش چیست؟ یک مفهوم طلایی در سئو
بودجه خزش یعنی تعداد صفحاتی که ربات های گوگل تو یه بازه زمانی مشخص (مثلاً ۲۴ ساعت) میتونن از سایت شما بازدید کنن. این عدد برای هر سایتی فرق می کنه و به عوامل مختلفی مثل اعتبار سایت، تعداد بک لینک ها، سرعت سایت و حجم کلی صفحات بستگی داره.
۲.۱.۲. اهمیت بهینه سازی: استفاده بهینه از انرژی گوگل!
چرا بهینه سازی Crawl Budget مهمه؟ چون اگه گوگل وقت و انرژیش رو صرف خزش صفحات بی اهمیت (مثل صفحات ورود، نتایج جستجوی داخلی یا آرشیوهای قدیمی) کنه، دیگه بودجه ای برای بررسی صفحات مهم و جدید شما باقی نمی مونه. نتیجه اش میشه ایندکس شدن کندتر صفحات جدید و از دست دادن فرصت برای رتبه بندی بهتر تو گوگل.
۲.۱.۳. نقش Robots.txt: فرماندهی ربات ها!
اینجاست که robots.txt وارد گود میشه و نقش فرمانده رو بازی می کنه. شما با استفاده از این فایل، به ربات ها میگین: آهای ربات های عزیز، لطفاً مستقیم برین سراغ مقالات جدید و محصولات پرفروش، اون صفحات تگ و دسته بندی های کم اهمیت رو بیخیال بشین! با این کار، بودجه خزش گوگل رو به سمت صفحات باارزش هدایت می کنین و مطمئن میشین که مهم ترین محتواهاتون در اولویت خزش و ایندکس قرار می گیرن. این یعنی افزایش کارایی خزش، تضمین ایندکس صفحات مهم و در نهایت، بهبود سرعت ایندکس.
۲.۲. جلوگیری از ایندکس شدن صفحات تکراری (Duplicate Content)
یکی از کابوس های سئوکارها، محتوای تکراری یا Duplicate Content هست. وقتی یه محتوا یا یه صفحه با آدرس های مختلف (URL) توی سایتتون وجود داشته باشه، گوگل گیج میشه و نمیدونه کدوم یکی از اینا نسخه اصلیه و باید رتبه بگیره. این مشکل می تونه به ضرر سئوی سایتتون تموم بشه و حتی باعث پنالتی شدن یا افت رتبه بشه.
صفحات تکراری میتونن حالت های مختلفی داشته باشن: مثلاً URLهایی که پارامتر دارن (مثل فیلترها و مرتب سازی ها تو فروشگاه های اینترنتی)، نسخه های قابل چاپ صفحات، صفحات توسعه یا استیجینگ که برای تست استفاده میشن و نباید ایندکس بشن. با robots.txt می تونید خیلی راحت دسترسی ربات ها به این صفحات تکراری رو ببندین و جلوی ایجاد مشکل سئو رو بگیرین. هرچند راه حل اصلی برای محتوای تکراری استفاده از تگ کنونیکال (Canonical Tag) هست، اما robots.txt هم می تونه به عنوان یه لایه محافظتی عمل کنه.
۲.۳. حفاظت از محتوای خصوصی و غیرضروری
تو هر سایتی یه سری بخش ها هستن که ماهیت خصوصی یا غیرضروری دارن و اصلاً نباید توی نتایج جستجو دیده بشن. مثلاً صفحات ادمین سایت، صفحات لاگین کاربرها، نتایج جستجوی داخلی سایتتون، صفحات آزمایشی یا استیجینگ که هنوز کامل نشدن، یا فایل های شخصی که فقط خودتون بهشون نیاز دارین. اگه این صفحات ایندکس بشن، ممکنه امنیت سایتتون رو به خطر بندازه یا باعث بشه اطلاعاتی که نباید عمومی بشن، لو برن.
Robots.txt بهتون اجازه میده جلوی ایندکس شدن اینجور صفحات رو بگیرین. حتی می تونید جلوی خزش فایل های رسانه ای خاص (مثل تصاویر خیلی کم اهمیت یا PDFهای داخلی که جنبه محرمانه دارن) رو هم ببندین. اینطوری خیالتون راحته که فقط چیزایی که می خواید، توی گوگل نشون داده میشن.
۲.۴. مدیریت دسترسی ربات های مختلف
میدونستین که فقط گوگل نیست که ربات داره؟ موتورهای جستجوی دیگه مثل بینگ (Bingbot)، یاندکس (Yandexbot) یا بایدو (Baiduspider) هم ربات های خودشون رو دارن. تازه، یه عالمه ابزار سئو، آرشیوکننده های وب و ربات های دیگه هم هستن که به سایت شما سر می زنن. Robots.txt به شما این امکان رو میده که برای هر کدوم از این ربات ها، قوانین خاصی تعریف کنین.
مثلاً ممکنه بخواید ربات گوگل به یه بخش خاص دسترسی داشته باشه، ولی ربات بینگ نه. یا شاید بخواید ربات های ابزارهای سئو رو کلاً از یه سری بخش ها دور نگه دارین تا بودجه خزش اونا رو مصرف نکنن. این کار با دستورالعمل های User-agent تو robots.txt امکان پذیره که جلوتر بیشتر در موردش حرف می زنیم.
ساختار یک فایل Robots.txt: اجزا و دستورالعمل های کلیدی
حالا که فهمیدیم robots.txt چیه و چرا اینقدر مهمه، وقتشه که بریم سراغ ساختار داخلیش و ببینیم از چه اجزایی تشکیل شده. نگران نباشین، اصلاً پیچیده نیست و با چند تا دستورالعمل ساده میتونین کلی کار انجام بدین.
هر فایل robots.txt از یک یا چند بلوک دستورالعمل تشکیل شده. هر بلوک با یه User-agent شروع میشه و بعدش یه سری قوانین (Disallow, Allow, Sitemap) میاد که مخصوص همون User-agent هستن.
۳.۱. User-agent: معرفی ربات ها
اولین چیزی که توی هر بلوک دستورالعمل میبینین، User-agent هست. این دستور به robots.txt میگه که دستورالعمل های بعدی، قراره برای کدوم ربات اعمال بشه. یوزر ایجنت مثل اسم و فامیل رباته.
User-agent: *: این ستاره (*) یعنی برای همه ربات ها. اگه بخواید یه قانون برای همه ربات های خزنده اعمال کنین، باید از این دستور استفاده کنین.- User-agentهای رایج:
Googlebot: ربات اصلی گوگل برای صفحات وب.Googlebot-Image: ربات گوگل برای تصاویر.Googlebot-News: ربات گوگل برای اخبار.Bingbot: ربات موتور جستجوی بینگ.Yandexbot: ربات موتور جستجوی یاندکس.Baiduspider: ربات موتور جستجوی بایدو (برای چین).
شما می تونین برای هر ربات، قوانین خاص خودشو بنویسین. اگه برای یه ربات خاص قانونی ننوشتین، اون ربات از قوانین مربوط به User-agent: * تبعیت می کنه.
۳.۲. Disallow: بفرما این قسمت ممنوع!
دستور Disallow اصلی ترین دستور برای مسدود کردن دسترسی ربات ها به یک فایل یا یک مسیر (دایرکتوری) خاص هست. اگه یه مسیر رو Disallow کنین، ربات های مشخص شده دیگه به اونجا سر نمی زنن.
نحوه نوشتن مسیرها:
- مسدود کردن یک فایل خاص:
Disallow: /private-document.pdfاین دستور جلوی خزش فایل
private-document.pdfرو می گیره. - مسدود کردن یک دایرکتوری (پوشه):
Disallow: /wp-admin/این دستور باعث میشه ربات ها وارد پوشه
wp-admin(که پنل مدیریت وردپرس شماست) و هیچ کدوم از فایل های داخل اون نشن. یادتون باشه حتماً اسلش (/) آخر رو بذارین تا کل پوشه مسدود بشه. - مسدود کردن صفحات دارای پارامتر: اگه صفحات شما پارامترهای مختلفی تو URL دارن (مثل نتایج جستجوی داخلی یا فیلترها)، می تونید با کاراکتر
*اونا رو مسدود کنین:Disallow: /*?s=*این دستور هر URLی که بعد از
/دارای علامت سوال (?) وs=باشه رو مسدود می کنه. - مسدود کردن همه چیز:
Disallow: /این دستور (که بعد از Disallow فقط یه اسلش داره) به ربات میگه کلاً وارد هیچ جای سایت نشو!. از این دستور با احتیاط کامل استفاده کنین، چون سایتتون رو از نتایج جستجو حذف می کنه!
۳.۳. Allow: استثنا قائل شو!
گاهی اوقات شما یه پوشه رو با Disallow مسدود می کنین، ولی می خواید یه فایل یا زیرپوشه خاصی داخل همون پوشه مسدود شده، برای ربات ها قابل دسترسی باشه. اینجاست که Allow به کارتون میاد. Allow مثل یه استثنا برای دستور Disallow عمل می کنه.
مثال: فرض کنید می خواید کل پوشه /private/ مسدود باشه، اما یه فایل خاص به اسم public-file.html که داخل همین پوشه هست، برای ربات ها قابل خزش باشه:
User-agent: *
Disallow: /private/
Allow: /private/public-file.html
تو این مثال، ربات ها به کل پوشه /private/ دسترسی ندارن، به جز فایل public-file.html که بهش اجازه دسترسی داده شده.
۳.۴. Sitemap: نقشه گنج سایت شما!
دستور Sitemap اختیاریه، ولی اضافه کردن آدرس کامل نقشه های سایت XML (که معمولاً با فرمت sitemap.xml هستن) به robots.txt کار فوق العاده هوشمندانه ایه. با این کار، به ربات ها میگین که نقشه ی راه سایت شما کجاست و چطوری می تونن همه صفحات مهم سایتتون رو پیدا کنن. این کار سرعت کشف صفحات رو حسابی بالا می بره.
می تونید چندین نقشه سایت رو پشت سر هم اضافه کنین:
Sitemap: https://www.yourdomain.com/sitemap_index.xml
Sitemap: https://www.yourdomain.com/post-sitemap.xml
Sitemap: https://www.yourdomain.com/page-sitemap.xml
۳.۵. Crawl-delay (نکته مهم و به روز): دیگه گوگل ازش پشتیبانی نمی کنه!
قبلاً یه دستوری به اسم Crawl-delay وجود داشت که شما می تونستید باهاش به ربات ها بگین که بین خزش هر صفحه، چند ثانیه صبر کنن. این کار برای این بود که سرور سایتتون تحت فشار قرار نگیره و سرعتش کم نشه. اما خبر بد اینه که گوگل دیگه از این دستور تو robots.txt پشتیبانی نمی کنه!
اگه هنوز از این دستور استفاده می کنین، باید بدونین که ربات های گوگل بهش بی توجهی می کنن. جایگزینش چیه؟ می تونید تو Google Search Console، نرخ خزش (Crawl Rate) سایتتون رو تنظیم کنین. البته گوگل خودش هم معمولاً نرخ خزش رو بر اساس عملکرد سرور شما بهینه می کنه و نیاز به دست کاری زیادی نیست.
۳.۶. نکات مهم در نگارش: ریزه کاری های Robots.txt
برای اینکه فایل robots.txt شما درست و حسابی کار کنه، باید به چند تا نکته ی ریز و مهم تو نگارشش دقت کنین:
- مسیرهای نسبی (Relative Paths): همیشه از مسیرهای نسبی استفاده کنین، یعنی پروتکل (http/https) و نام دامنه رو ننویسین. مثلاً به جای
Disallow: https://www.yourdomain.com/wp-admin/، بنویسینDisallow: /wp-admin/. اینطوری اگه یه روزی دامنه سایتتون رو تغییر دادین، robots.txtتون همچنان کار می کنه. - حساسیت به حروف کوچک و بزرگ (Case-Sensitivity): یادتون باشه که robots.txt به حروف کوچک و بزرگ خیلی حساسه. یعنی
/wp-admin/با/WP-ADMIN/فرق داره. پس مسیرها رو دقیق و همونطوری که تو سایتتون هستن، بنویسین. - استفاده از
#برای کامنت گذاری: می تونین با گذاشتن علامت#اول هر خط، اون خط رو به کامنت تبدیل کنین. کامنت ها توسط ربات ها نادیده گرفته میشن، ولی به شما و تیمتون کمک می کنن که بفهمین هر خط دستورالعمل برای چیه و چرا اونجا نوشته شده. این کار خوانایی فایل رو خیلی بیشتر می کنه. - محدودیت حجم فایل robots.txt: گوگل معمولاً فقط ۵۰۰ کیلوبایت اول فایل robots.txt رو می خونه. پس سعی کنین فایل رو خیلی بزرگ نکنین و فقط دستورالعمل های ضروری رو توش بنویسین.
۴. تفاوت Robots.txt با Meta Robots و X-Robots-Tag (جدول مقایسه ای جامع)
یه اشتباه رایج بین خیلی از وب مسترها اینه که فکر می کنن robots.txt وظیفه ایندکس نکردن صفحات رو هم داره. اما این یه سوءتفاهم بزرگه! robots.txt فقط جلوی خزش رو می گیره، نه ایندکس شدن رو. یعنی اگه یه صفحه با robots.txt مسدود شده باشه، ربات ها سراغش نمیرن، اما اگه لینک های دیگه به اون صفحه اشاره کنن، گوگل ممکنه بازم اسم اون صفحه رو (بدون محتوا) توی نتایج جستجو نشون بده. برای عدم ایندکس، باید از دستورات دیگه استفاده کنین. اینجاست که پای Meta Robots و X-Robots-Tag میاد وسط.
۴.۱. Robots.txt: کنترل خزش در سطح سایت و دایرکتوری ها
همونطور که گفتیم، robots.txt یه فایل کلیه که به ربات ها میگه به این مسیرها اصلاً نزدیک نشو. این دستورالعمل ها در سطح کل سایت یا دایرکتوری های خاص اعمال میشن. اگه یه صفحه رو با robots.txt مسدود کنین، ربات ها دیگه اون رو نمی خزن و اگه محتوای اون صفحه مهم باشه، این یه مشکل برای سئو به حساب میاد.
۴.۲. Meta Robots Tag: کنترل ایندکس و فالو در سطح صفحه
Meta Robots Tag یه قطعه کده که داخل تگ <head> هر صفحه HTML قرار می گیره. این تگ به ربات ها میگه که با محتوای اون صفحه خاص چیکار کنن. مهم ترین کاربردش برای جلوگیری از ایندکس شدن یا فالو نشدن لینک های داخل اون صفحه ست.
مثال: اگه بخواید یه صفحه خاص رو نه ایندکس کنه و نه لینک های داخلش رو فالو کنه، از این کد استفاده می کنید:
<meta name=robots content=noindex, nofollow>
اینجا، noindex میگه این صفحه رو تو نتایج جستجو نشون نده و nofollow میگه لینک های داخل این صفحه رو دنبال نکن و اعتبار نده.
۴.۳. X-Robots-Tag (HTTP Header): کنترل ایندکس و فالو برای فایل های غیر HTML
X-Robots-Tag یه دستور مشابه Meta Robots Tag هست، با این تفاوت که تو هدر HTTP سرور قرار می گیره و بیشتر برای کنترل ایندکس و فالو شدن فایل های غیر HTML (مثل PDF، تصاویر، ویدئوها یا فایل های ZIP) استفاده میشه. این دستور خیلی قدرتمنده چون مستقیماً از طرف سرور صادر میشه و برای فایل هایی که تگ <head> ندارن، عالیه.
مثال: اگه بخواید یه فایل PDF رو ایندکس نکنه:
X-Robots-Tag: noindex, nofollow
۴.۴. جدول مقایسه دقیق: سه تفنگدار سئو!
| ویژگی | Robots.txt | Meta Robots Tag | X-Robots-Tag |
|---|---|---|---|
| محل قرارگیری | ریشه سایت (فایل robots.txt) |
تگ <head> در HTML هر صفحه |
هدر HTTP (تنظیم در سرور) |
| عملکرد اصلی | جلوگیری از خزش (Crawl) | جلوگیری از ایندکس (Index) و فالو (Follow) | جلوگیری از ایندکس (Index) و فالو (Follow) |
| میزان کنترل | کل سایت / دایرکتوری ها | یک صفحه خاص | فایل های غیر HTML (PDF، تصاویر و غیره) |
| اولویت | پایین (اگر Disallow شود، ربات نمی تواند بخواند و دستورات دیگر را اجرا کند) | بالا (اگر صفحه Crawl شود، کنترل می کند) | بالا (اگر فایل Crawl شود، کنترل می کند) |
| اثر بر رتبه بندی | غیرمستقیم (با مدیریت بودجه خزش) | مستقیم (با کنترل ایندکس/فالو) | مستقیم (با کنترل ایندکس/فالو) |
پس یه بار دیگه تکرار می کنم: Robots.txt جلوی خزش رو می گیره. برای ایندکس نشدن یک صفحه یا فایل، باید از دستور noindex (چه در Meta Robots و چه در X-Robots-Tag) استفاده کنین. این نکته خیلی مهمه و نباید فراموشش کنین!
۵. نحوه ایجاد و پیاده سازی فایل Robots.txt در پلتفرم های مختلف
خب، تا اینجا کلی در مورد Robots.txt و اهمیتش حرف زدیم. حالا وقتشه که آستین ها رو بالا بزنین و دست به کار بشین و یه فایل robots.txt برای سایتتون بسازین و پیاده سازی کنین. نگران نباشین، این کار اونقدرها هم که به نظر میاد سخت نیست.
۵.۱. ایجاد فایل با ویرایشگر متن ساده: قلم و کاغذ الکترونیکی!
ساده ترین راه برای ساخت فایل robots.txt استفاده از یه ویرایشگر متن ساده ست. منظورم برنامه هایی مثل Notepad تو ویندوز یا TextEdit تو مک هست، نه برنامه هایی مثل Word که فرمت های خاص خودشون رو دارن.
- باز کردن ویرایشگر متن: تو ویندوز،
notepadرو تو قسمت جستجو تایپ کنین و بازش کنین. تو مک هم می تونین TextEdit رو باز کنین. - نوشتن دستورالعمل ها: دستورالعمل های مورد نظرتون رو (که تو بخش ساختار توضیح دادیم) تو این فایل بنویسین.
- ذخیره فایل: حالا مهم ترین قسمت: فایل رو با نام دقیق
robots.txtذخیره کنین. حواستون باشه که پسوند.txtرو حتماً داشته باشه و هیچ اسم دیگه ای نذارین براش. همچنین، فرمت ذخیره روUTF-8انتخاب کنین تا با کاراکترهای فارسی هم مشکلی نداشته باشین.
۵.۲. آپلود در ریشه سایت (برای انواع هاست): رساندن نامه به مقصد!
بعد از اینکه فایل robots.txt رو ساختین، باید اون رو تو ریشه اصلی سایتتون آپلود کنین. ریشه اصلی سایت جاییه که فایل های اصلی سایت شما (مثل فایل index.php یا index.html) قرار دارن. معمولاً اسم این پوشه تو هاست های مختلف public_html یا www هست.
برای آپلود می تونید از دو روش اصلی استفاده کنین:
- استفاده از FTP Client: برنامه هایی مثل FileZilla به شما اجازه میدن به هاستتون وصل بشین و فایل ها رو بین کامپیوترتون و هاست جابجا کنین. بعد از اتصال، کافیه فایل
robots.txtرو تو پوشهpublic_htmlیاwwwآپلود کنین. - استفاده از File Manager هاست: اکثر پنل های هاستینگ (مثل cPanel یا DirectAdmin) یه بخش به اسم File Manager دارن که از طریق اون می تونید فایل ها رو مستقیماً تو هاستتون مدیریت کنین. وارد این بخش بشین، به پوشه ریشه سایتتون برین و فایل
robots.txtرو اونجا آپلود کنین.
۵.۳. پیاده سازی در وردپرس (WordPress): راه حل های ساده تر!
اگه سایتتون وردپرسیه، خبر خوب اینه که چند تا راه ساده تر هم برای مدیریت فایل robots.txt دارین. وردپرس خودش یه robots.txt مجازی ایجاد می کنه، ولی اگه می خواید کنترل بیشتری داشته باشین، بهتره یه فایل فیزیکی بسازین.
۵.۳.۱. استفاده از افزونه های سئو (توصیه شده): راه حل جادویی!
ساده ترین و امن ترین راه برای بهینه سازی robots.txt در وردپرس، استفاده از افزونه های سئو هست. این افزونه ها یه رابط کاربری گرافیکی بهتون میدن که بدون نیاز به کدنویسی، می تونید فایل robots.txt رو ویرایش کنین.
- Yoast SEO: اگه از یوآست استفاده می کنین، می تونین از مسیر SEO > Tools > File Editor به ویرایشگر robots.txt دسترسی پیدا کنین و تغییراتتون رو اعمال کنین.
- All in One SEO (AIOSEO): این افزونه هم یه ابزار عالی برای این کار داره. به مسیر All in One SEO > Tools > Robots.txt برین، تیک Enable Custom Robots.txt رو بزنین و قوانین مورد نظرتون رو اضافه کنین.
۵.۳.۲. ویرایش دستی فایل فیزیکی از طریق FTP: روش سنتی!
اگه زیاد با افزونه ها حال نمی کنین یا می خواید کنترل کامل داشته باشین، می تونین فایل robots.txt رو دستی از طریق FTP ویرایش کنین.
اگه قبلاً یه فایل robots.txt تو ریشه نصب وردپرستون دارین، می تونین اون رو دانلود کنین، تغییرات رو با Notepad روش اعمال کنین و دوباره آپلودش کنین. اگه هم ندارین، یه فایل جدید robots.txt بسازین (همونطوری که تو بخش ۵.۱ گفتم) و آپلودش کنین.
۵.۳.۳. ایجاد Robots.txt مجازی با .htaccess و functions.php (روش پیشرفته): برای حرفه ای ها!
این روش کمی پیشرفته تره و نیاز به دانش فنی بیشتری داره. اگه با کدنویسی سر و کار دارین، می تونید یه robots.txt مجازی از طریق فایل های .htaccess و functions.php بسازین. البته اگه وارد نیستین، بهتره از این روش استفاده نکنین، چون ممکنه سایتتون رو به مشکل بندازه.
با این روش، شما یه ورودی تو .htaccess ایجاد می کنید که وقتی ربات ها درخواست robots.txt رو میدن، به جای یه فایل فیزیکی، یه خروجی از functions.php بهشون نشون داده میشه.
۵.۴. مثال بهینه و جامع از یک فایل Robots.txt برای سایت های وردپرسی و عمومی (با توضیح هر خط):
خب، حالا که راه های ایجاد رو یاد گرفتین، بیاین یه مثال عملی از یه فایل robots.txt خوب و بهینه رو با هم ببینیم. این مثال هم برای سایت های وردپرسی کاربرد داره و هم برای سایت های عمومی:
User-agent: *
# این دستورات برای همه ربات ها اعمال می شوند.
Disallow: /wp-admin/
# جلوی خزش پنل مدیریت وردپرس را می گیرد.
Disallow: /wp-includes/
# جلوی خزش فایل های اصلی و غیرضروری وردپرس را می گیرد.
Disallow: /wp-content/plugins/
# جلوی خزش فایل های افزونه ها را می گیرد.
Disallow: /wp-content/themes/
# جلوی خزش فایل های قالب ها را می گیرد (معمولاً ضرورتی برای ایندکس شدن ندارند).
Disallow: /wp-json/
# جلوی خزش API وردپرس را می گیرد.
Disallow: /xmlrpc.php
# جلوی خزش فایل xmlrpc.php را می گیرد که می تواند حفره امنیتی باشد.
Disallow: /trackback/
# جلوی خزش بخش های مربوط به Trackback را می گیرد.
Disallow: /feed/
# جلوی خزش فیدهای RSS/Atom را می گیرد (معمولاً محتوای تکراری).
Disallow: /comments/
# جلوی خزش صفحات کامنت ها را می گیرد.
Disallow: /search/
# جلوی خزش نتایج جستجوی داخلی سایت را می گیرد.
Disallow: /*?s=*
# جلوی خزش URLهای دارای پارامتر جستجو را می گیرد.
Disallow: /tag/
# جلوی خزش آرشیو تگ ها را می گیرد (می توانند محتوای کم ارزش باشند).
Disallow: /category/
# جلوی خزش آرشیو دسته بندی ها را می گیرد (می توانند محتوای کم ارزش باشند).
Disallow: /author/
# جلوی خزش صفحات نویسندگان را می گیرد (برای وبلاگ های تک نویسنده یا صفحات بی ارزش).
Disallow: /page/*/comment-page-*
# جلوی خزش صفحات نظرات چندگانه را می گیرد.
Disallow: /*/feed/
# جلوی خزش فیدهای مربوط به بخش های خاص را می گیرد.
Allow: /wp-content/uploads/
# به ربات ها اجازه می دهد فایل های آپلود شده (مثل تصاویر) را بخزند (مهم برای سئو تصاویر).
User-agent: Googlebot-Image
# قوانین خاص برای ربات تصاویر گوگل.
Disallow: /wp-content/uploads/private-images/
# جلوی خزش تصاویر خصوصی در یک پوشه خاص را می گیرد.
User-agent: Bingbot
# قوانین خاص برای ربات بینگ.
Disallow: /bing-specific-area/
# جلوی خزش یک بخش خاص را برای بینگ می گیرد.
Sitemap: https://www.yourdomain.com/sitemap_index.xml
Sitemap: https://www.yourdomain.com/post-sitemap.xml
Sitemap: https://www.yourdomain.com/page-sitemap.xml
# آدرس نقشه های سایت XML را به ربات ها معرفی می کند.
توضیحاتی درباره این مثال:
تو این فایل، ما اول یه سری قوانین عمومی برای همه ربات ها گذاشتیم. بخش های مهم و داخلی وردپرس رو که نباید ایندکس بشن، Disallow کردیم. اما به ربات ها اجازه دادیم فایل های آپلود شده تو پوشه uploads رو بخزن، چون این فایل ها (مخصوصاً تصاویر) برای سئو خیلی مهمن. بعدش، برای ربات Googlebot-Image یه قانون خاص گذاشتیم که تصاویر خصوصی رو نخزه. همین کار رو برای Bingbot هم کردیم. در آخر هم آدرس سه تا نقشه سایت مهم رو اضافه کردیم.
این یه نمونه جامع هست، شما می تونین بر اساس نیاز سایتتون، این دستورات رو کم یا زیاد کنین. مثلاً اگه آرشیو تگ ها و دسته بندی های شما محتوای باارزشی دارن، می تونین اون خطوط Disallow رو پاک کنین.
۶. بهترین شیوه ها (Best Practices) برای استفاده هوشمندانه از Robots.txt
حالا که با ساختار و نحوه پیاده سازی robots.txt آشنا شدین، باید بدونین چطوری هوشمندانه ازش استفاده کنین تا بهترین نتیجه رو برای سئوی سایتتون بگیرین. مثل هر ابزار قدرتمند دیگه ای، robots.txt هم اگه درست استفاده نشه، ممکنه دردسرساز بشه. بیاین با هم بهترین شیوه ها رو مرور کنیم:
۶.۱. از مسدود کردن بیش از حد خودداری کنید: اعتدال شرط عقل است!
یکی از بزرگ ترین اشتباهات، زیاده روی تو مسدود کردنه. بعضیا فکر می کنن هرچی بیشتر مسدود کنن، بهتره. اما اینطوری نیست! فقط اون مسیرها یا فایل هایی رو Disallow کنین که واقعاً نیازی به خزش و ایندکس شدن ندارن. اگه صفحات مهم یا باارزش رو مسدود کنین، موتورهای جستجو هیچ وقت نمی تونن اونا رو پیدا و ایندکس کنن و این یعنی از دست دادن رتبه و ترافیک.
یادتون باشه که همیشه اعتدال رو رعایت کنین. Robots.txt فقط برای مسدود کردن محتوای غیرضروری یا تکراریه، نه محتوای اصلی و باارزش سایتتون.
۶.۲. برای جلوگیری از ایندکس شدن، از noindex استفاده کنید، نه Disallow: این یک اصل طلایی است!
این یکی از مهم ترین نکاتیه که بارها و بارها تکرار می کنم. Robots.txt فقط جلوی خزش رو می گیره. اگه می خواید یه صفحه یا فایل ایندکس نشه و تو نتایج جستجو نشون داده نشه، باید از دستور noindex استفاده کنین. این دستور رو میشه تو Meta Robots Tag (برای صفحات HTML) یا X-Robots-Tag (برای فایل های غیر HTML) قرار داد.
اگه یه صفحه رو Disallow کنین، گوگل اون رو نمی خزه و نمی فهمه که شما بهش گفتین noindex! پس ممکنه اسم اون صفحه با یه توضیح کوتاه (مثلاً محتوایی برای این صفحه در دسترس نیست) توی نتایج جستجو دیده بشه، که این اصلاً چیز خوبی نیست.
۶.۳. آدرس نقشه سایت (Sitemap) را حتماً اضافه کنید: راهنما رو کامل کنید!
همیشه آدرس کامل نقشه سایت XML خودتون رو تو فایل robots.txt اضافه کنین. این کار به ربات ها کمک می کنه تا ساختار سایتتون رو بهتر بفهمن و صفحات جدید و مهم رو سریع تر کشف و ایندکس کنن. حتی اگه نقشه سایتتون رو تو Google Search Console هم ثبت کردین، بازم اضافه کردنش به robots.txt ضرری نداره و سرعت کار رو بیشتر می کنه.
۶.۴. استفاده هوشمندانه از Wildcardها (*) و Match Patternها: باهوش تر عمل کنید!
کاراکتر * (Wildcard) تو robots.txt خیلی کاربردیه. می تونین ازش برای مسدود کردن گروه هایی از URLها یا فایل ها استفاده کنین که الگوی خاصی دارن. مثلاً Disallow: /wp-content/plugins/* همه فایل ها و پوشه ها رو تو دایرکتوری plugins مسدود می کنه.
همچنین، علامت $ تو بعضی از User-agentها (مثل گوگل) می تونه برای مشخص کردن انتهای URL استفاده بشه. مثلاً Disallow: /*.pdf$ فقط فایل هایی با پسوند .pdf رو مسدود می کنه و به .pdf?version=1 کاری نداره.
۶.۵. قوانین خاص برای ربات های مختلف: سفارشی سازی کنید!
اگه نیاز دارین که یه ربات خاص (مثلاً Bingbot) رفتار متفاوتی نسبت به بقیه ربات ها داشته باشه، می تونین یه بلوک دستورالعمل جداگانه با User-agent: Bingbot براش تعریف کنین. اینطوری کنترل دقیق تری روی رفتار هر ربات تو سایتتون خواهید داشت.
۶.۶. بررسی و به روزرسانی منظم فایل Robots.txt: همیشه آپدیت باشید!
سایت ها همیشه در حال تغییر و تحول هستن. ممکنه یه بخش جدید اضافه کنین، یه دایرکتوری رو تغییر بدین، یا یه URL رو عوض کنین. هر بار که تغییرات ساختاری تو سایتتون ایجاد میشه، حتماً فایل robots.txt رو بررسی کنین و اگه نیاز بود، به روزرسانیش کنین. یه robots.txt قدیمی و از کار افتاده، می تونه حسابی به سئوی سایتتون ضربه بزنه.
۶.۷. استفاده از کامنت ها: رمزگشایی برای تیم شما!
همونطور که قبلاً گفتم، با گذاشتن علامت # اول هر خط، می تونین کامنت بنویسین. این کار بهتون کمک می کنه که یادتون بمونه هر دستورالعمل برای چی نوشته شده و چرا اونجاست. مخصوصاً اگه با یه تیم کار می کنین، کامنت ها خوانایی فایل رو برای بقیه اعضای تیم خیلی بیشتر می کنن.
۷. اشتباهات رایج در استفاده از فایل Robots.txt و نحوه اجتناب از آن ها
گاهی وقت ها با یه اشتباه کوچیک تو فایل robots.txt، ممکنه یه ضربه ی بزرگ به سئوی سایتتون وارد کنین. بیاین با هم رایج ترین اشتباهات رو بررسی کنیم تا شما اونا رو انجام ندین:
۷.۱. مسدود کردن فایل های CSS و JavaScript: خودزنی سئو!
یکی از فاجعه بارترین اشتباهات، Disallow کردن فایل های CSS و JavaScript هست. ربات های گوگل برای اینکه سایت شما رو درست ببینن و رندر کنن، به این فایل ها نیاز دارن. اگه اونا رو مسدود کنین، گوگل نمی تونه طراحی، چیدمان و حتی بخشی از محتوای سایت شما رو درست درک کنه. نتیجه؟ رتبه ی سایتتون پایین میاد و ممکنه به عنوان یه سایت غیربهینه شناخته بشه. پس هیچ وقت این فایل ها رو مسدود نکنین!
۷.۲. استفاده از فرمت یا سینتکس نادرست: دستورالعمل های غلط!
فایل robots.txt باید دقیقاً بر اساس قواعد و فرمت استاندارد پروتکل حذف ربات ها نوشته بشه. یه اشتباه کوچیک تو نگارش (مثلاً یه فاصله اضافی، یه حرف بزرگ/کوچیک اشتباه، یا دستورات غیراستاندارد) می تونه باعث بشه که کل فایل توسط ربات ها نادیده گرفته بشه یا به اشتباه عمل کنه. همیشه دستورات رو دقیق بنویسین و اگه شک دارین، از ابزارهای تست استفاده کنین.
۷.۳. مسدود کردن صفحات مهم به اشتباه: هدف گیری غلط!
تصور کنین یه دفعه متوجه میشین که مهم ترین صفحه محصول یا مقاله بلاگتون از نتایج جستجو ناپدید شده! ممکنه دلیلش این باشه که به اشتباه اون رو تو robots.txt مسدود کردین. همیشه قبل از اعمال هر تغییری، با دقت بررسی کنین که کدوم مسیرها رو دارین مسدود می کنین و مطمئن بشین که صفحات باارزش و کلیدی سایتتون بین اونا نیستن. یه بار دیگه: فقط محتوای بی اهمیت یا تکراری رو مسدود کنین.
۷.۴. اعتماد بیش از حد به Robots.txt برای امنیت: پلیس نیست، راهنماست!
همونطور که اول مقاله گفتم، robots.txt یه پروتکل راهنمایی برای ربات های خوبه، نه یه دیوار آتش یا ابزار امنیتی. اگه اطلاعات حساسی (مثل اطلاعات مشتریان، پنل های داخلی، یا اسناد محرمانه) تو سایتتون دارین، هرگز برای محافظت از اونا فقط به robots.txt اکتفا نکنین. ربات های بدجنس یا هکرها به این فایل توجهی نمی کنن. برای محتوای حساس، باید از روش های امنیتی واقعی مثل رمز عبور قوی، احراز هویت دو مرحله ای (2FA) یا محدودیت های دسترسی در سطح سرور استفاده کنین.
۷.۵. فراموش کردن به روزرسانی پس از تغییرات در ساختار یا URLهای سایت: آپدیت باشید!
سایت شما یه موجود زنده ست و دائم در حال تغییره. ممکنه URL یه صفحه رو عوض کنین، یه دایرکتوری جدید بسازین یا یه بخش رو کلاً حذف کنین. اگه بعد از این تغییرات، فایل robots.txt رو به روزرسانی نکنین، ممکنه مشکلاتی پیش بیاد. مثلاً صفحات جدیدی که نباید ایندکس بشن، ایندکس میشن یا برعکس، صفحات مهمی که جابجا شدن، مسدود باقی می مونن. پس همیشه حواستون به robots.txt باشه و با هر تغییر بزرگی تو ساختار سایت، یه نگاهی بهش بندازین.
۸. تست و اعتبارسنجی Robots.txt با Google Search Console
بعد از اینکه فایل robots.txt خودتون رو ساختین و آپلود کردین، یه مرحله خیلی مهم دیگه هم باقی می مونه: تست و اعتبارسنجی! باید مطمئن بشین که فایل شما درست کار می کنه و ربات های گوگل اونو طبق خواست شما می خونن و عمل می کنن. بهترین ابزار برای این کار، Google Search Console هست.
۸.۱. ابزار Robots.txt Tester: آزمایشگاه فایل شما!
Robots.txt Tester یه ابزار فوق العاده کاربردی تو سرچ کنسول هست که بهتون اجازه میده فایل robots.txt سایتتون رو آزمایش کنین و ببینین آیا دستوری که دادین، واقعاً داره عمل می کنه یا نه. مراحل استفاده ازش اینجوریه:
- دسترسی به ابزار: اول مطمئن بشین که سایتتون تو Google Search Console ثبت شده. بعد وارد سرچ کنسول بشین. مسیر دقیق این ابزار ممکنه کمی تغییر کنه، اما معمولاً می تونین اون رو تو بخش Settings > Crawling > Robots.txt Tester پیدا کنین.
- بررسی فایل فعلی: وقتی وارد این بخش میشین، سرچ کنسول به طور خودکار فایل robots.txt فعلی سایت شما رو واکشی می کنه و نشون میده. اگه خطایی تو سینتکس یا نگارش فایل باشه، اون رو با رنگ قرمز هایلایت می کنه و بهتون میگه مشکل از کجاست. اینجوری می تونین سریعاً مشکل رو برطرف کنین.
- تست URLهای خاص: یکی از قابلیت های عالی این ابزار، اینه که می تونین یه URL خاص از سایتتون رو وارد کنین و ببینین که آیا ربات های گوگل اجازه خزش اون URL رو دارن یا نه. اینجوری می تونین مطمئن بشین که صفحات مهم مسدود نشدن و صفحات غیرضروری هم طبق دستور شما مسدود شدن.
- درخواست خزش مجدد برای Robots.txt: اگه تو فایل robots.txtتون تغییری ایجاد کردین، می تونین با استفاده از دکمه Submit یا Request crawl تو همین ابزار، از گوگل بخواین که سریع تر فایل جدید رو بخزه و تغییرات رو اعمال کنه. البته گوگل خودش هر ۲۴ ساعت یکبار robots.txt رو بررسی می کنه، ولی این گزینه برای مواقع اضطراری خیلی به درد می خوره.
۸.۲. گزارش Crawl Stats (آمار خزش): دیدن تأثیرات در بلندمدت!
علاوه بر Robots.txt Tester، گزارش Crawl Stats (آمار خزش) تو سرچ کنسول هم خیلی به دردتون می خوره. این گزارش به شما نشون میده که ربات های گوگل در طول زمان چطور دارن سایت شما رو می خزن. می تونین تعداد صفحات خزش شده، زمان صرف شده برای خزش، و حتی مشکلات خزش رو ببینین.
با بررسی این گزارش قبل و بعد از اعمال تغییرات تو robots.txt، می تونین تأثیر دستورالعمل هاتون رو روی رفتار خزش گوگل ببینین. مثلاً اگه بعد از مسدود کردن یه سری صفحات بی اهمیت، تعداد صفحات باارزش و مهمی که گوگل می خزه، افزایش پیدا کنه، یعنی شما بودجه خزش رو به درستی بهینه کردین و کارتون رو خوب انجام دادین.
پس، Google Search Console رو دست کم نگیرین. این ابزار دستیار فوق العاده ای برای مدیریت و بهینه سازی robots.txt شماست و کمک می کنه همیشه مطمئن باشین که سایتتون داره بهترین عملکرد رو تو موتورهای جستجو نشون میده.
نتیجه گیری
تا اینجای مقاله، حسابی با فایل robots.txt آشنا شدیم و فهمیدیم این فایل کوچک اما قدرتمند، چقدر تو کنترل ربات های خزنده، بهینه سازی بودجه خزش و در نهایت، بهبود سئو سایت ما نقش داره. فهمیدیم که robots.txt مثل یه نقشه راهنمایی و رانندگی عمل می کنه که به ربات های موتورهای جستجو میگه کجاها برن و کجاها نرن. از اهمیت جلوگیری از خزش صفحات تکراری و خصوصی گفتیم و یاد گرفتیم که چطوری با استفاده از دستورات User-agent، Disallow، Allow و Sitemap، یه فایل robots.txt موثر بسازیم.
همچنین، تفاوت های کلیدی robots.txt رو با Meta Robots Tag و X-Robots-Tag بررسی کردیم و تأکید کردیم که برای ایندکس نشدن صفحات، باید حتماً از noindex استفاده کنیم، نه فقط Disallow. راهنمای گام به گام ساخت و پیاده سازی این فایل رو تو پلتفرم های مختلف، مخصوصاً وردپرس، با هم مرور کردیم و یه مثال جامع و بهینه هم براتون آوردیم. در نهایت، با بهترین شیوه های استفاده از robots.txt و اشتباهات رایج تو این زمینه آشنا شدیم و یاد گرفتیم چطوری با Google Search Console، فایل خودمون رو تست و اعتبارسنجی کنیم.
Robots.txt ستون فقرات سئو تکنیکال سایته و اگه درست درک، پیاده سازی و نگهداری بشه، می تونه کمک بزرگی به دیده شدن سایت شما تو موتورهای جستجو کنه. پس، این فایل رو دست کم نگیرین و همین حالا شروع کنین به بررسی یا بهینه سازی robots.txt سایت خودتون. یادتون باشه، robots.txt یه ابزار عالیه، اما تنها بخشی از پازل بزرگ سئو هست و باید کنار بقیه استراتژی های بهینه سازی استفاده بشه تا بهترین نتیجه رو بگیرین.
حالا که یه راهنمای کامل و عملی دارین، دست به کار بشین و robots.txt سایتتون رو به یه فرمانده هوشمند برای ربات ها تبدیل کنین. هر سوالی داشتین، حتماً بپرسین، من اینجا هستم تا کمکتون کنم!



