

فایل robots.txt فایلی است که به ربات های موتور های جست و جوگر می گوید در کدام صفحات سایت جستجو کنند و همچنین از جست و جو در کدام صفحات خودداری کنند.
وبمسترهای موفق همواره عملکرد و تغییرات این رباتها را دنبال کرده و مطابق با استانداردهای آنان پیشروی میکنند.
اما این رباتها به چه صورت به سایتهای گوناگون دسترسی پیدا میکنند؟ چطور میتوان دسترسی این رباتها به محتوا یا صفحات خاصی از سایتمان را محدود کنیم یا به آنها دسترسی کامل بدهیم؟ برای این مورد، تکنیکی ساده و در عین حال فوقالعاده مهم و حیاتی وجود دارد. این تکنیک، استفاده از یک فایل متنی موسوم به robots.txt است که با کمک آن و درج دستورات تحت وب میتوان کارهای مختلفی از جمله ایجاد دسترسی یا محدودسازی ربات موتورهای جستجو را انجام داد.
فایل robots.txt چیست؟
یک Robots.txt درواقع یک فایل متنی ساده است که در مسیر اصلی فضای سایت شما یا روت دایرکتوری (Root Directory) قرار میگیرد. در حقیقت وظیفه این فایل معرفی بخشهای قابل دسترسی و بخشهای محدود شده برای دسترسی رباتها یا با تعریفی دقیقتر، خزندگان سطح وب (Web Crawlers) که از سوی موتورهای جستجو به منظور بررسی و ثبت اطلاعات سایتها ایجاد شده اند میباشد.
با درج دستوراتی خاص در این فایل، شما میتوانید به رباتهای موتورهای جستجو بگوئید که کدام صفحات، کدام فایلها و کدام بخشهای سایت شما را دیده و آنها را ایندکس کنند و کدام صفحات را نادیده بگیرند. به عبارت دیگر، اولین چیزی که رباتهای موتورهای جستجو با آن برخورد میکنند، همین فایل Robots.txt است. به محض رویارویی با این فایل، خزندگان سطح وب شروع به بررسی محتوا و لیست داخل این فایل کرده تا بخشهای قابل دسترسی را پیدا کنند.
اگر سایت شما فایل robots.txt را نداشته باشد چه اتفاقی میافتد؟
اگر این فایل در هاست سایت شما آپلود نشده باشد، خزندگان و رباتهای موتورهای جستجو امکان دسترسی به تمام صفحات عمومی را خواهند داشت و قادر هستند تا تمام محتوای سایت شما را ایندکس کنند.
فایل robots.txt چگونه کار میکند؟
فایل robots.txt یک فایل متنی با ساختاری ساده است. نحوه عملکرد این فایل با کمک دستورات پیشفرض و ادغام کلمات کلیدی از پیش تعیین شده است. از جمله مهمترین و رایجترین این دستورات مواردی مثل User-agent ، Disallow ، Allow ، Crawl-delay و Sitemap میباشند که در ادامه به صورت جداگانه هریک از این موارد را با جزئیات آنها شرح میدهیم.
User-agent: این دستور برای مشخص کردن رباتها و خرندگانی است که امکان دسترسی به بخشهای سایت را داشته باشند یا خیر. با این دستورالعمل میتوان به تمام رباتها دسترسی داد و یا با اضافه کردن نام رباتی خاص، فقط به آن ربات دسترسیهای مختلف را داد یا محدود کرد.
مثال: یک ربات وارد سایت شما شده و قصد بررسی و جمعآوری اطلاعات از یک صفحه خاص برای مثال www.example.com/test.html را دارد. این ربات قبل از اینکه این صفحه را مورد بررسی قرار دهد، ابتدا فایل robots.txt را چک میکند. برای مثال محتویات داخل این فایل به صورت زیر است:
User-agent: *
User-agent: * به این معنی است که تمام بخشهای این سایت قابل دسترس برای تمام رباتها و خزندگان موتورهای جستجو است. اما اگر قصد این را دارید که اطلاعات خود را فقط برای یک ربات خاص تعیین کنید باید نام دقیق آن ربات را به جای ستاره جایگذاری کنید.
به مثال زیر دقت کنید. در این مثال فقط ربات گوگل حق دسترسی به صفحات سایت را دارد :
User-agent: Googlebot
Disallow و Allow: با کمک این دستورالعمل میتوان به User-agent یا همان رباتهای تعیین شده مشخص کرد که کدام بخشهای سایت را بررسی و ایندکس کنند یا نکنند. همانطور که مشخص است، کد Allow به منزله ایجاد دسترسی و کد Disallow به منزله محدودسازی دسترسی رباتها استفاده میشوند.
مثال: اگر فقط دستور “Disallow: /” را در فایل robots.txt درج کرده باشید، با این کار به رباتها اعلام میکنید که آنها نباید هیچ صفحهای از این سایت را بازدید، بررسی یا ایندکس کنند. همچنین اگر میخواهید به همه آنها دسترسی کامل داده باشید باید از دستور “Allow: /” استفاده کنید.
شما میتوانید فایلها، مسیرها، آدرسها و صفحات مشخص شده سایت خود را به عنوان موارد انتخابی تعیین کنید تا فقط این بخشها قابل دسترسی باشند یا برعکس. به نمونه ساده زیر دقت کنید:
Disallow: /wp-admin/
Allow: /contact/
طبق مثال بالا، مسیر ورودی به پنل مدیریتی وردپرس برای دسترسی رباتها محدود شده است اما صفحه Contact یا همان صفحه ارتباط با ما قابل دسترس است. به همین طریق میتوان خیلی راحت و سریع این نوع دسترسیها را مدیریت کرد.
نمونههایی رایج از این دستورالعملها :
Crawl-delay: شما قادر هستید تا با درج دستورالعمل Crawl-delay یا نرخ تأخیر، رباتهای موتورهای جستجو را مجبور کنید تا برای بررسی و ایندکس کردن صفحات شما به نوبت، به مقدار زمان مشخص شده توسط شما صبر کنند. البته قابل ذکر است که این دستورالعمل روی بعضی از رباتها از جمله مهمترین آنها ربات گوگل یا Googlebot قابل استفاده نیست. برای اینکه این قابلیت را در ربات گوگل نیز فعال کنید، میتوانید از کنسول جستجوی گوگل (Google Search Console) نرخ زمان مربوط به این مورد را برای ربات گوگل از بخش تنظیمات سایت (Site Settings) تغییر دهید.
هدف از این کار کاهش تعداد درخواستهای پیاپی رباتها به سرور سایت شما است. چنین اقدامی به تسهیل فرآیندهای ایندکس شدن کمک زیادی میکند. برای استفاده از این دستور میتوانید در فایل متنی robots.txt متن زیر را قرار دهید :
crawl-delay: 10
با قرار دادن این کد در robots.txt شما درواقع به رباتهای موتورهای جستجویی همچون Yahoo و Bing اعلام میکنید که بعد از هر یک ایندکس، 10 ثانیه صبر کرده و مجدداً صفحه دیگری را ایندکس کنند. این کد برای موتور جستجوی Yandex با کمی تفاوت عمل میکند. با درج این دستور در robots.txt موتور جستجوی Yandex هر 10 ثانیه یک بار به کل صفحات سایت دسترسی پیدا خواهد کرد. با تغییر عدد 10 به دیگر اعداد، میتوانید مدت زمان مربوطه را کم یا زیاد کنید.
نکته: توجه کنید که استفاده از دستورالعمل crawl-delay ممکن است در همه حالات نتیجه مناسب به همراه نداشته باشد. به عنوان مثال اگر شما نرخ تأخیر رباتها را روی ده ثانیه قرار دهید، موتورهای جستجو به صورت روزانه میتوانند فقط نزدیک به 8600 صفحه از سایت شما را بررسی و ایندکس کنند. اگرچه این مقدار برای سایتهای نه چندان بزرگ مقدار کمی نیست، اما برای سایتهایی که صفحات زیاد و محتوای متعددی دارند اقدام مناسبی نمیباشد. بنابراین قبل از استفاده از این مورد به این مسئله دقت کافی را داشته باشید.
Sitemap: با تعیین دستور مربوط به نقشه سایت در robots.txt میتوانید به موتورهای جستجو بفهمانید که فایل XML نقشه سایت شما را از چه مسیری پیدا کرده و به آن دسترسی داشته باشند. اگرچه برای ثبت کردن نقشه سایت در موتورهای جستجو ابزارهای انحصاری خاصی وجود دارد، ولی این راه نیز یکی از روشهای ساده و کم دردسر برای این مسئله است. البته تحت هر شرایطی، استفاده از ابزارهای وبمستری موتورهای جستجو مثل Google Webmaster Tools اولویت بسیار بیشتری خواهد داشت. اما اگر تصمیم به انتخاب راه سادهتر دارید، کافیست کد دستوری زیر را در فایل robots.txt اضافه کنید :
Sitemap: https://example.com/sitemap.xml
همانطور که پیداست، باید مثل نمونه بالا، آدرس دقیق نقشه سایت خود را به صورت صحیح در این لاین وارد کنید.
محل قرارگیری فایل robots.txt در سایت
عد از آن که فایل robots.txt خود را ساختید، حالا وقت آن است که آن را در محلی از سایت خود قرار دهید که موتورهای جست و جو به راحتی آن را پیدا کنند و از قوانین آن پیروی کنند. توجه داشته باشید که اگر فایل را به درستی نوشته باشید و آن را در جای مناسب قرار دهید، همه موتورهای جست و جو آن را شناسایی می کنند و بدون کم و کاست از قوانین آن پیروی خواهند کرد.
به طور کلی شما می توانید robot.txt در هر قسمتی از main directory سایت خود قرار دهید. اما برای آن که شانس دیده شدن آن توسط ربات های جستجوگر را افزایش دهید، توصیه می شود که robot.txt در مسیری مانند مسیر زیر بگذارید:
https://example.com/robots.txt
نکته: حتما توجه داشته باشید که robot.txt را باید با حروف کوچک تایپ کرده باشید.
دیدگاهتان را بنویسید