صفحه اصلی / افزایش رتبه سایت در گوگل / فایل robots.txt و نحوه ساخت آن

فایل robots.txt و نحوه ساخت آن

آپلود عکس

 

فایل robots.txt چیست 

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

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

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

نمونه فایل robots.txt و فایل humans.txt برای سایت گوگل:

https://www.google.com/humans.txt

https://www.google.com/robots.txt

فایل robots.txt باید در چه آدرسی قرار دهیم؟

این فایل حتماً باید در آدرس http://domain.com/robots.txt مورد دسترسی ربات‌ها قرار گیرد. حال دو نکته درباره این موضوع:

  • اگر ربات خزنده قصد داشته باشد به زیر دامنه‌های ما سر بزند قبل از خزش به همان فایل که در آدرس http://domain.com/robots.txt است، نگاه می‌کند. درنتیجه لزومی ندارد برای هر زیر دامنه فایل robots.txt را درج کنیم.
  • اگر سایت شما هم با www و هم بدون www باز می‌شود باید فایل robots.txt را در هر دو حالت یکسان تنظیم کنید همین موضوع برای http و httpsهم صدق می‌کند ولی به این نکته توجه داشته باشید که اگر سایت به این شکل در دسترس باشد باعث ایجاد محتوای تکراری می‌شود که برای سئو داخلی سایت به‌شدت ضرر است و یکی از دلایل پنالتی شدن سایت در گوگل می‌باشد، چراکه تمام دامنه‌های زیر از نگاه گوگل یک سایت مجزا محسوب می‌شود.
  1. http://www.site.com
  2. https://www.site.com
  3. http://site.com
  4. https://site.com
  • ممکن است شما قصد داشته باشید آدرسی از صفحات را ربات خزش کند و لینک‌های آن صفحات را بررسی کند ولی در نتایج آن صفحه را نمایش ندهد در این صورت شما نمی‌توانید از این فایل برای چنین عملی استفاده کنید و بهتر است از متاتگ ربات برای این موضوع استفاده کنید. اگر قصد دارید این روش را به شکل بهینه انجام دهید مقاله متاتگ robots ما را حتماً بخوانید تا به نکات جالبی درباره این متاتگ دست پیدا کنید.

نحوه ساخت فایل robots.txt

اگر در دامنه خود به آدرس http://domain.com/robots.txt مراجعه کرده باشید و خطایی را مشاهده کنید به معنی نداشتن این فایل در سایت شما می‌باشد. کافی است به کنترل پنل خود رفته حال اگر کنترل‌پنل سی‌پنل باشد محیطی شبیه عکس زیر دارد. در ریشه سایت یک فایل ساده ایجاد کرده و فرمت و نام آن را robots.txt درج کنید.

ساخت robots.txt در سی پنل
ساخت robots.txt در سی پنل

در ادامه به تعریف سه کیورد می‌پردازیم.

User-agent : نام ربات موردنظر را جلوی این عبارت می‌نویسیم. با استفاده از کیورد user-agent می‌توانید ربات خاصی را هدف گرفته یا به‌طورکلی، دستوری را خطاب به همه آن‌ها درج کنید. گاهی بعضی از موتورهای جستجو ربات‌های مختلفی نیز دارند همانند موتور جستجوی گوگل که برای تصاویر، اخبار و موارد دیگر ربات خاص خود را دارد. در ادامه مثال‌های متنوعی خواهیم زد تا بهتر به این امر پی ببرید.

لیست ربات‌های معروف در عکس زیر:

آپلود عکس

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

Disallow : مقابل این کیبورد دایرکتوری را درج می‌کنید که قصد ندارید ربات آن را ایندکس کند. بعد از عبارت User-agent می‌توانید در هرچند بار که لازم باشد از Disallow استفاده نمایید. به این نکته مهم توجه کنید که ربات موتورهای جستجو به حروف کوچک و بزرگ در دایرکتوری‌ها حساس هستند. در ادامه مثال‌های متنوعی خواهیم زد تا بهتر به این امر پی ببرید.

Allow : برعکس دستور Disallow است هرچند دستور Allow غیررسمی است ولی توسط اکثر ربات‌های معروف شناخته‌شده است.

نمونه دستورات در فایل Robots.txt

مثال یک

مثال زیر در خط اول شامل همه ربات موتورهای جستجو می‌شود چراکه با علامت ستاره درج‌شده است و خط دوم با / درج شده و شامل کل آدرس‌های یک دامنه می‌شود، بنابراین دستور زیر به این معنی است که هیچ‌یک از موتورهای جستجو مجاز به خزیدن سایت شما نباشند.

User-agent: *

Disallow: /

مثال دو

دستور زیر برعکس دستور بالا می‌گویید همه ربات‌های موتورهای جستجو به کلیه آدرس‌های سایت دسترسی دارند.

User-agent: *

Disallow:

خلاصه تصویری از دو مثال بالا
خلاصه تصویری از دو مثال بالا

 

مثال سه

دستور زیر به این معناست که فقط ربات گوگل دسترسی به پوشه blog را ندارد و این شامل همه زیرپوشه‌های blog هم می‌شود یعنی هم شامل آدرس newstarbusiness.ir/blog می‌شود و هم شامل آدرس‌های به‌مانند newstarbusiness.ir/blog/example نیز می‌شود. در این شرایط بقیه ربات‌ها به‌جز گوگل دسترسی به این دایرکتوری رادارند.

User-agent: googlebot

Disallow: /blog

مثال چهار

همان‌طور که گفتیم موتورهای جستجو ممکن است تعداد ربات‌های زیادی برای موارد خاص داشته باشند برای همین اولویت هم برای آنان مهم است. درصورتی‌که در فایل robots.txt دستوراتی را درج کرده باشید که چند بلاک مختلف آن‌ها برای یک ربات (خزنده) صادق باشد، ربات موتور جستجو همیشه دستوری را که به‌طور واضح‌تر به آن ربات خاص اشاره می‌کند انتخاب کرده و دستورات همان بخش را اجرا خواهد کرد. مثلاً فرض کنید اگر فایل robots.txt همانند دستور زیر یک بلاک مخصوص Googlebot و یک بلاک مخصوص Googlebot-Video وجود داشته باشد. در این حالت اگر ربات عکس گوگل (Googlebot-Image) وارد سایت شما شود، در میان این بلاک‌ها از اولی پیروی خواهد کرد و اگر ربات ویدیو گوگل (Googlebot-Video) وارد سایت شود، از بلاک دومی پیروی خواهد کرد و دستورات بلاک اولی را نادیده گرفته چراکه بلاک دومی برای آن در اولویت است.

User-agent: Googlebot

Disallow: /Photo

User-agent: Googlebot-Video

Allow: /blog

مثال پنج

شما می‌توانید از عبارات منظم (Regular Expression) هم برای استفاده در دستورات فایل robots.txt استفاده کنید هرچند به شکل رسمی این عبارات منظم در این فایل تعریف‌نشده است ولی اکثر ربات‌های معروف در دنیا از عبارات منظم نیز پشتیبانی می‌کنند. مثلاً در دستور نیز اشاره‌شده که کلیه ربات‌ها به فایل‌ها با پسوند pdf که در فولدر (دایرکتوری) test وجود دارند، غیرمجاز است و نباید دسترسی داشته باشند.

User-agent: *

Disallow: /test/*.pdf

مثال شش

دستور زیر که در بسیاری از سایت‌های وردپرس استفاده می‌شود به این معناست که تمام ربات‌ها به پوشه ادمین wp-admin دسترسی نداشته باشند ولی به فایل admin-ajax.php که در این پوشه هست دسترسی پیدا کنند. هرچند بنده فکر نکنم یک مهندس سئو کار حرفه‌ای از چنین دستوراتی در فایل robots.txt استفاده کند چراکه حتی اگر این دستورات نباشند ربات توانایی وارد شدن به محیط امین وردپرس را ندارد و منطقی نیست چنین دستوراتی به‌کاربرده شود. اگر توجه کرده باشید ما در این مقال یک بار از کیورد User-agent استفاده کردیم و سپس ۲ خط دستور وارد کردیم، شما می‌توانید به تعداد دلخواه دستورات لازم را در هر خط وارد نمایید.

 

User-agent: *

Disallow: /wp-admin/

Allow: /wp-admin/admin-ajax.php

مثال هفت

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

User-agent: *

Disallow: /wp-admin/

Disallow: /wp-includes/

مثال هشت

دستور زیر وقتی کاربرد دارد که شما در آدرس‌های خود کاراکتری مانند ? را داشته باشید چراکه گاهی به دلیل مشکلات فنی در سایت، مقاله شما ممکن است با آدرس‌های مختلف و با مقادیر متفاوت انتشار پیدا کند. به همین منظور دستور زیر را به شکل موقت درج می‌کنید تا ربات‌ها آدرس‌های را کاراکتر علامت سؤال را ایندکس نکنند. مانند چنین آدرس‌هایی newstarbusiness.ir/?p=3693

 

User-agent: *

Disallow: /*?*

تست فایل robots.txt در سرچ کنسل گوگل

در نهایت بعد از ساختن فایل robots.txt نوبت به تست و صحت کارکرد آن می‌رسد. گوگل در قسمتی از سرچ کنسول خود شرایط رایگانی برای تست فایل robotx.txt فراهم کرده است.  به این منظور وارد سرچ کنسول (وبمسترتولز) شوید.

آپلود عکس

در منوهای موجود سرچ کنسول “Crawl” را انتخاب کنید.

آپلود عکس

سپس زیرمنوی  “robots.txt Tester.” را انتخاب کرده تا ابزار تست این فایل را مشاهده کنید.

آپلود عکس

در سمت راست دستوراتی را مشاهده می‌کنید که در فایل robots.txt درج کرده بودید. این نشان دهنده این است که شما به درستی این فایل را ایجاد کرده‌اید و مکان آن صحیح است.

آپلود عکس

اگر قصد دارید مطمئن شوید که آیا ربات به آدرسی دسترسی دارد یا نه، می‌توانید در قسمت “Enter a URL to test if it is blocked” آدرس را وارد کنید و نوع ربات گوگل را هم مشخص نمایید و دکمه تست را بزنید

 
آپلود عکس

اگر با پیغام “ALLOWED” مواجه شدید به معنای آن است که ربات گوگل به آن دایرکتوری دسترسی دارد در غیر این صورت با پیغام “BLOCKED” روبه‌رو می‌شوید که بنی بر آن است که ربات دسترسی به آن آدرس (دایرکتوری) را ندارد.

اطلاعات بیشتر درباره تست فایل robots.txt در سایت گوگل مشاهده کنید.

چند نکته پایانی درباره فایل robots.txt

  • ربات‌های خزنده و یا بعضی ربات‌های موتورهای جستجو ممکن است به دستورات موجود در فایل robots.txt که درج‌شده را نادیده بگیرند. مخصوصاً ربات‌های اسپم یا مالور (malware robots) که برای آسیب‌پذیری، سایت‌ها را بدون توجه به این مسائل اسکن می‌کنند. و به دنبال ایمیل کاربران یا موارد دیگر هستند.
  • ممکن است متدهای فایل robots.txt را با متاتگ robots به اشتباه بگیرید برای همین پیشنهاد می‌شود که حتما مقاله کوتاه و مفید تفاوت فایل robots.txt با متاتگ robots را بخوانید.
  • موتورهای جستجو محتوای فایل robots.txt را کش می‌کنند اما معمولا محتوای کش شده را روزی حداقل یک بار به روز رسانی می‌کنند با این حال شما اگر تمایل دارید بعد از تغییرات در این فایل، موتورهای جستجو سریع‌تر کش را آپدیت کنند فایل خود را در این آدرس گوگل ارسال کنید.

راستی اگر شما هم تجربه‌ی درباره نحوه کارکرد فایل robots.txt دارید خوشحال میشیم در نظرات به اشتراک بگذارید 🙂

 

منبع :پایگاه دانش میزفا

درباره محمدرضا واعظی

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *