آموزش فایل robots.txt و کاربرد آن

  • استک لرن
  • 11 اردیبهشت 1401
What is robots.txt file?

فایل robots.txt چیست - نام این فایل را برنامه‌نویسان وب و وب‌مستران بسیار زیاد می‌شوند. یک فایل متنی ساده که در ریشه سایت قرار می‌گیرد و یک سری دستور در آن نوشته شده است. آیا تا‌کنون برایتان سوال شده است که این فایل متنی ساده چه کاربردی دارد و چه اطلاعاتی در آن ذخیره می‌شود؟

فرض کنید وارد یک بیمارستان بزرگ شده‌اید (البته امیدواریم هیچوقت پایتان به بیمارستان‌ها باز نشود) که تا‌کنون آنجا نبوده‌اید و به دنبال قسمت خاصی از بیمارستان هستید و همچنین به دنبال اطلاعات دیگری مانند نحوه نوبت گیری، اطلاعات پزشک‌ها و... هستید. در چنین شرایطی که شما با این مکان آشنایی ندارید، از کجا این اطلاعات را بدست می‌آورید؟ بله! احتمالا به بخش اطلاعات یا پذیرش رجوع می‌کنید و سپس سوالات خود را مطرح می‌کنید تا با بخش‌های مختلف، نحوه پذیرش و... آشنا بشوید.

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

در ادامه با کاربرد و دستورات این فایل بیشتر آشنا خواهیم شد.

فایل robots.txt چیست؟

robots.txt یک فایل است که به ربات‌ها یا خزندگان موتور‌های جست‌و‌جو می‌گوید که چه مسیر‌هایی را نباید خزش کنند و چه مسیر‌هایی را در سایت پیمایش کنند.

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

بسیاری از موتور‌های جست‌و‌جو (مانند گوگل و بینگ) اطلاعات این فایل را می‌خوانند و بر اساس آن اقدام به خزش در سایت ما می‌کنند.

آموزش پنل سرچ کنسول گوگل

 

چرا فایل robots.txt مهم است؟

به صورت کلی، بیشتر وب‌سایت‌ها احتمالا حتی به فایل robots.txt نیاز ندارند. زیرا ربات گوگل می‌تواند صفحات مهم وب سایت را تشخیص دهد و آن‌ها را خزش کند و حتی می‌تواند محتوای تکراری (Duplicate Content) را تشخیص دهد و آن‌ها را ایندکس نکند.

به طور کلی در سه حالت است که ما به این فایل نیاز خواهیم داشت

1. مسدود کردن صفحات غیر عمومی

گاهی اوقات صفحاتی در سایت ما وجود دارند که ما نمی‌خواهیم موتور‌های جست‌و‌جو آن‌ها را ایندکس کنند.

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

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

یک مثال هم برای توسعه دهندگان وب بزنیم. فرض کنید یک لینک در کد‌های شما وجود دارد که وظیفه لایک کردن یک مقاله را دارد. اگر یک درخواست POST ارسال کنید ولی لینک را به صورت کامل در کد قرار دهید، باید بدانید که موتور‌های جستجو قادر به یافتن آن آدرس هستند. آیا چنین آدرسی که برای API است، باید توسط موتور‌های جستجو شناسایی و ایندکس شود؟ قطعا خیر! این محتوا برای ربات‌ها نیست که آن را خزش کنند. بنابراین باید جلوی خواندن این آدرس را توسط بات‌ها بگیرید. یکی از روش‌ها، استفاده از فایل robots.txt است تا چنین مسئله‌ای را مدیریت کنید.

آیا همه API‌ها باید در robots.txt باشند؟ طبیعتا خیر! فقط آن‌هایی که ربات‌ها به واسطه کد‌ها می‌توانند به لینک‌های آن‌ها دسترسی داشته باشند، باید مدیریت شوند.

 

2. افزایش بودجه خزش

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

بنابراین به کمک این فایل صفحاتی که از لحاظ محتوایی ارزش خزش را ندارند، به robots.txt می‌توانید معرفی کنید و یا می‌توانید آن‌ها را noindex کنید.

 

3. جلوگیری از ایندکس شدن منابع

یکی از راه‌های جلوگیری از ایندکس شدن صفحات، استفاده از روش متا تگ robots است. به کمک این روش می‌توان جلوی ایندکس شدن صفحاتی که ارزش ایندکس شدن را ندارند، گرفت اما برای منابعی مانند تصاویر، فایل‌های PDF، ویدیو‌ها و... نمی‌توانیم از روش meta tag استفاده کنیم. در چنین شرایطی می‌توانیم به کمک فایل robots.txt جلوی چنین منابعی را از ایندکس شدن گرفت.

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

 

آموزش فایل robots.txt

اولین قدم این است که واقعا یک فایل robots.txt بسازید. این فایل باید در ریشه سایت شما قرار داشته باشد. یعنی باید از مسیر yourdomain.com/robots.txt قابل دسترس باشد. برای ساخت این فایل کافیست یک فایل متنی ساده با پسوند .txt بسازید و محتوای آن را خالی قرار بدهید.

مثال برای نوشتن فایل robots.txt

 

robots.txt User-agent

User-agent درباره رباتی است که به صورت مشخص برای آن تنظیمات را قرار می‌دهید.

برای مثال اگر بخواهید فقط تنظیمات برای ربات گوگل باشد، باید این خط کد را در این فایل قرار دهید:

User-agent: googlebot

در صورتی که تنظیمات برای همه ربات‌ها باشد:

User-agent: *

 

robots.txt Disallow

به کمک این دستور می‌توانید یک مسیر یا مسیر‌هایی را مسدود کنید تا ربات موتور جستجو آن مسیر‌ها را خزش نکند.

Disallow: /images/*

در دستور بالا تمام فایل‌ها و مسیر‌هایی که در مسیر images هستند، مسدود می‌شوند.

 

robots.txt Allow

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

Allow: /about آموزش تبلیغ در گوگل ادز

 

robots.txt Sitemap

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

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

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

این دو را با هم اشتباه نگیرید! Canonial tag برای مشخص کردن نسخه اصلی یک صفحه استفاده می‌شود ولی با دستور Disallow می‌توان از خزش یک صفحه یا منبع (تصویر، ویدیو، فایل و...) جلوگیری کنید. این دستور همانند متا تگ robots عمل می‌کند که می‌توانیم یک صفحه را noindex کنیم. البته توصیه می‌شود برای صفحات وب از روش متا تگ استفاده کنیم و برای منابع (تصویر، ویدیو و...) از Disallow استفاده کنیم.

فایل robots.txt به خزنده‌های موتورهای جستجو می‌گوید که خزنده به کدام URL‌ها می‌تواند در سایت شما دسترسی داشته باشد. این عمدتا برای جلوگیری از بارگذاری بیش از حد سایت شما با درخواست‌ها استفاده می‌شود. این مکانیسمی برای دور نگه داشتن یک صفحه وب از گوگل نیست. برای مسدود کردن یک صفحه وب از Google، از متا تگ robots و noindex کردن آن صفحه استفاده کنید.

robots.txt یک فایل متنی است که در فهرست اصلی وردپرس شما قرار دارد. می‌توانید با باز کردن your-website.com/robots.txt در مرورگر خود به آن دسترسی داشته باشید. این به ربات‌های موتور جستجو اجازه می‌دهد بدانند که کدام صفحات در وب‌سایت شما باید خزیده شوند و کدام‌ها نباید خزیده شوند.
ارسال نظر :
پاسخ به