مجموعه ای از دستورالعمل ها برای ربات ها است . این فایل در فایل های منبع اکثر وب سایت ها قرار داره. فایلهای Robots.txt بیشتر برای مدیریت فعالیتهای رباتهای خوب مانند خزندههای وب در نظر گرفته شدهاند ، زیرا رباتهای بد احتمالاً دستورالعملها را دنبال نمیکنند.
یک فایل robots.txt را مانند یک علامت «مشخصات رفتاری» در نظر بگیرید که روی دیوار یک باشگاه ورزشی، یک بار یا یک مرکز اجتماعی نصب شده: این علامت به خودی خود قدرتی برای اجرای قوانین ذکر شده نداره، اما مشتریان «خوب» هستند. قوانین را رعایت خواهند کرد، در حالی که مشتریان “بد” احتمالا آنها را زیر پا می گذارند و خود را ممنوع می کنند.
ربات یک برنامه کامپیوتری خودکاره که با وب سایت ها و برنامه ها تعامل داره دو نوع ربات داریم: رباتهای خوب و رباتهای بد ،ربات خوب، ربات خزنده وب نامیده میشود. این ربات ها صفحات وب را “خزیدن” می کنند و محتوا را فهرست تا در نتایج موتورهای جستجو نمایش داده شود. یک فایل robots.txt به مدیریت فعالیتهای این خزندههای وب کمک میکنه تا بر سرور وب میزبان وبسایت مالیات اضافه نکنند، یا صفحاتی را که برای نمایش عمومی نیستند فهرستبندی کنند.
حتما بخوانید: آموزش سئو حرفه ای رایگان
فایل robots.txt چیست و چگونه کار می کند؟
فایل robots.txt فقط یک فایل متنی بدون کد نشانه گذاری HTML است از این رو پسوند txt ، فایل robots.txt مانند هر فایل دیگری در وب سایت بر روی وب سرور میزبانی می شود. در واقع، فایل robots.txt برای هر وبسایت معینی را معمولاً میتوان با تایپ URL کامل برای صفحه اصلی و سپس افزودن robots.txt ، مانند https://www.cloudflare.com/robots.txt مشاهده کرد . این فایل به جای دیگری در سایت پیوند داده نشده است، بنابراین کاربران به احتمال زیاد به آن برخورد نمی کنند، اما اکثر ربات های خزنده وب ابتدا قبل از خزیدن بقیه سایت، به دنبال این فایل می گردند.
در حالی که یک فایل robots.txt دستورالعمل هایی را برای ربات ها ارائه می دهد، در واقع نمی تواند دستورالعمل ها را اجرا کند. یک ربات خوب، مانند یک خزنده وب یا یک ربات فید خبری، سعی می کند قبل از مشاهده هر صفحه دیگری در یک دامنه، ابتدا از فایل robots.txt بازدید کند و دستورالعمل ها را دنبال کند. یک ربات بد فایل robots.txt را نادیده می گیرد یا آن را پردازش می کند تا صفحات وب ممنوعه را پیدا کند.
یک ربات خزنده وب از خاص ترین مجموعه دستورالعمل ها در فایل robots.txt پیروی می کند. اگر دستورات متناقضی در فایل وجود داشته باشد، ربات از دستور granular تر پیروی می کنه.
نکته مهمی که باید به آن توجه داشت اینه که همه زیر دامنه ها به فایل robots.txt خود نیاز دارند. به عنوان مثال، در حالی که www.cloudflare.com فایل مخصوص به خود را داره، همه زیر دامنه های ، community.cloudflare.com و غیره نیز به فایل خود نیاز دارند.
چه پروتکل هایی در فایل robots.txt استفاده می شود؟
در شبکه، پروتکل قالبی برای ارائه دستورالعمل ها یا دستورات است. فایل های Robots.txt از چند پروتکل مختلف استفاده می کنند. پروتکل اصلی Robots Exclusion Protocol نام داره. این راهیه که به رباتها بگویید از کدام صفحات وب و منابع اجتناب کنند. دستورالعمل های فرمت شده برای این پروتکل در فایل robots.txt گنجانده شده است.
پروتکل دیگری که برای فایل های robots.txt استفاده می شود، پروتکل Sitemaps است. این را می توان یک پروتکل گنجاندن ربات ها در نظر گرفت. نقشههای سایت به خزنده وب نشان میدهند که در کدام صفحات میتوانند بخزند. این کمک می کند تا اطمینان حاصل شود که یک ربات خزنده هیچ صفحه مهمی را از دست نخواهد داد.
نمونه ای از فایل robots.txt
در اینجا فایل robots.txt برای www.cloudflare.com آمده است:
در زیر به معنای همه اینها می پردازیم.
عامل کاربر چیست؟ “کاربر-عامل: *” به چه معناست؟
هر شخص یا برنامه ای که در اینترنت فعال است یک “عامل کاربر” یا یک نام اختصاص یافته خواهد داشت. برای کاربران انسانی، این شامل اطلاعاتی مانند نوع مرورگر و نسخه سیستم عامله، اما اطلاعات شخصی نداره. به وبسایتها کمک میکند محتوایی را نشان دهند که با سیستم کاربر سازگاره. برای ربات ها، عامل کاربر (از لحاظ نظری) به مدیران وب سایت کمک می کنه تا بدانند چه نوع ربات هایی در سایت می خزند.
در یک فایل robots.txt، مدیران وب سایت می توانند با نوشتن دستورالعمل های مختلف برای عوامل کاربر ربات، دستورالعمل های خاصی را برای ربات های خاص ارائه دهند. به عنوان مثال، اگر مدیری بخواهد صفحه خاصی در نتایج جستجوی Google نمایش داده شود اما در جستجوهای Bing نباشد، میتواند دو مجموعه از دستورات را در فایل robots.txt شامل شود: یک مجموعه قبل از “User-agent: Bingbot” و یک مجموعه. قبل از “کاربر-عامل: Googlebot”.
در مثال بالا، Cloudflare “User-agent: *” را در فایل robots.txt قرار داده است. ستاره یک عامل کاربر “کارت وحشی” را نشان می دهد، و به این معنی است که دستورالعمل ها برای هر ربات اعمال می شود، نه هر ربات خاصی.
نامهای متداول عامل کاربر ربات موتور جستجو عبارتند از:
گوگل:
- Googlebot
- Googlebot-Image برای تصاویر
- Googlebot-News برای اخبار
- Googlebot-Video برای ویدیو
بینگ
- Bingbot
- MSNBot-Media برای تصاویر و ویدیو
بایدو
- بایدوسپایدر
چگونه دستورات ‘عدم اجازه’ در فایل robots.txt کار می کنند؟
دستور Disallow رایج ترین دستور در پروتکل حذف ربات ها است. این به رباتها میگوید که به صفحه وب یا مجموعهای از صفحات وب که پس از دستور میآیند دسترسی نداشته باشند. صفحات غیرمجاز لزوماً “پنهان” نیستند – آنها فقط برای کاربران عادی Google یا Bing مفید نیستند، بنابراین به آنها نشان داده نمی شوند. در بیشتر مواقع، کاربر در وب سایت اگر بداند این صفحات را کجا پیدا کند، همچنان می تواند به این صفحات دسترسی داشته باشد.
دستور Disallow را می توان به روش های مختلفی استفاده کرد که چندین مورد از آنها در مثال بالا نمایش داده شده است.
مسدود کردن یک فایل (به عبارت دیگر، یک صفحه وب خاص)
به عنوان مثال، اگر Cloudflare بخواهد رباتها را از خزیدن در مقاله ما مسدود کند، چنین دستوری به صورت زیر نوشته میشود:
Disallow: /learning/bots/what-is-a-bot/
پس از دستور “disallow”، بخشی از URL صفحه وب که پس از صفحه اصلی قرار می گیرد – در این مورد، “www.cloudflare.com” – قرار می گیرد. با وجود این دستور، رباتهای خوب به https://www.cloudflare.com/learning/bots/what-is-a-bot/ دسترسی نخواهند داشت و صفحه در نتایج موتورهای جستجو نشان داده نمیشود.
یک دایرکتوری را مسدود کنید
گاهی اوقات به جای فهرست کردن همه آنها به صورت جداگانه، مسدود کردن چندین صفحه به طور همزمان کارآمدتره. اگر همه آنها در یک بخش از وب سایت باشند، یک فایل robots.txt می تواند دایرکتوری حاوی آنها را مسدود کند.
یک مثال از بالا این است:
Disallow: /__mesa/
این بدان معنی است که تمام صفحات موجود در فهرست __mesa نباید خزیده شوند.
اجازه دسترسی کامل
چنین دستوری به صورت زیر خواهد بود:
Disallow:
این به ربات ها می گوید که می توانند کل وب سایت را مرور کنند، زیرا هیچ چیزی غیرمجاز نیست.
کل وب سایت را از ربات ها مخفی کنید
Disallow: /
“/” در اینجا نشان دهنده “ریشه” در سلسله مراتب یک وب سایت، یا صفحه ای است که همه صفحات دیگر از آن منشعب می شوند، بنابراین شامل صفحه اصلی و تمام صفحات پیوند شده از آن می شود. با این دستور، ربات های موتورهای جستجو به هیچ وجه نمی توانند وب سایت را بخزند. به عبارت دیگر، یک اسلش می تواند کل یک وب سایت را از اینترنت قابل جستجو حذف کند!
چه دستورات دیگری بخشی از پروتکل حذف ربات ها هستند؟
Allowهمانطور که انتظار می رود، دستور “Allow” به ربات ها می گوید که مجاز به دسترسی به یک صفحه وب یا فهرست خاص هستند. این دستور به رباتها اجازه دسترسی به یک صفحه وب خاص را میدهد، در حالی که بقیه صفحات وب موجود در فایل را غیرمجاز میکند. همه موتورهای جستجو این دستور را نمی شناسند.
Crawl-Delay: فرمان تاخیر خزیدن به این معنیه که ربات های عنکبوتی موتورهای جستجو را از مالیات بیش از حد بر سرور بازداره. این به مدیران اجازه می دهد تا مدت زمانی را که ربات باید بین هر درخواست منتظر بماند، در میلی ثانیه تعیین کنند. در اینجا یک مثال از دستور Crawl-Delay برای انتظار 8 میلی ثانیه است:
Crawl-delay: 8
گوگل این فرمان را نمی شناسد، اگرچه موتورهای جستجوی دیگر تشخیص می دهند. برای Google، مدیران میتوانند فرکانس خزیدن را برای وبسایت خود در کنسول جستجوی Google تغییر دهند.
پروتکل نقشه سایت چیست؟ چرا در robots.txt گنجانده شده است؟
پروتکل نقشه سایت به ربات ها کمک می کند تا بدانند چه چیزی را در خزیدن خود در یک وب سایت قرار دهند.
نقشه سایت یک فایل XML است که به شکل زیر است:
این یک لیست قابل خواندن ماشینی از تمام صفحات یک وب سایت است. از طریق پروتکل Sitemaps، پیوندهای این نقشه های سایت را می توان در فایل robots.txt قرار داد. قالب: “Sitemaps:” و سپس آدرس وب فایل XML. می توانید چندین نمونه را در فایل Cloudflare robots.txt در بالا مشاهده کنید.
در حالی که پروتکل نقشه سایت کمک می کند تا اطمینان حاصل شود که ربات های عنکبوتی وب در هنگام خزیدن یک وب سایت چیزی را از دست نمی دهند، ربات ها همچنان روند خزیدن معمول خود را دنبال می کنند. نقشههای سایت، رباتهای خزنده را مجبور نمیکنند تا صفحات وب را متفاوت اولویتبندی کنند.
robots.txt چگونه با مدیریت ربات ارتباط داره؟
مدیریت رباتها برای راهاندازی یک وبسایت یا برنامه ضروریه، زیرا حتی فعالیت خوب رباتها میتواند بر سرور مبدأ بیش از حد مالیات وارد کند و یک ویژگی وب را کند یا از بین ببرد. یک فایل robots.txt که به خوبی ساخته شده است، یک وب سایت را برای سئو بهینه نگه می داره و فعالیت خوب ربات را تحت کنترل نگه می داره.
با این حال، یک فایل robots.txt کار زیادی برای مدیریت ترافیک ربات های مخرب انجام نمی دهد . یک راه حل مدیریت ربات مانند Cloudflare Bot Management یا Super Bot Fight Mode می تونه به مهار فعالیت مخرب ربات بدون تأثیر روی ربات های ضروری مانند خزنده های وب کمک کنه.”
منبع: https://www.cloudflare.com/learning/bots/what-is-robots-txt