نقش اصلی فایل Robots.txt در محدود کردن دسترسی رباتهای موتور جستجوی گوگل به محتوای سایت شما است. تمامی این رباتها بهصورت خودکار عمل میکنند بهطوریکه قبل از ورود به هر سایت یا صفحهای از وجود فایل Robots.txt بر روی آن و محدود نبودن دسترسی محتویات اطمینان حاصل میکنند. تمام رباتهای استاندارد در وب به قوانین و محدودیتها پایبند بوده و صفحات شمارا بازدید و ایندکس نخواهند کرد ولی ناگفته نماند که بعضی از رباتها توجهی به این فایل ندارند. برای مثال رباتهای Email Harvesters و Spambots Malware یا باتهایی که امنیت سایت شمارا ارزیابی میکنند، امکان دارد هرگز این دستورات را دنبال نکنند و حتی کار خود را از بخشهایی از سایت آغاز کنند که اجازهٔ دسترسی به آن صفحات را ندارند.
در حقیقت با به کار بردن فایل Robots.txt این امکان برای شما به وجود میآید که صفحات سایت را تنها مختص کاربران خود طراحی کنید و ترسی از محتوای تکراری، وجود لینکهای بسیار آن در صفحه و تأثیر منفی آن بر سئو سایت نداشته باشید.هنگامیکه شما قصد دارید رباتهای گوگل را محدود کنید از فایل Robots.txt استفاده میکنید ولی اگر تمام صفحات سایت قابلیت ایندکس توسط گوگل را داشته باشند نیازی به این فایل نخواهید داشت.
برای ایجاد فایل Robots.txt ابتدا شما باید به هاست دسترسی داشته باشید و این فایل را در ریشه اصلی آن کپی کنید. اگر به هر دلیلی شما به هاست دسترسی نداشته باشید میتوانید با قرار دادن تگهای متا در هدر صفحه دسترسی رباتهای گوگل را به آن محدود نمایید.
برای ممانعت از ورود تمامی روباتهای اینترنتی به صفحه از تگ:
<meta name=”robots” content=”noindex” />
و برای محدود کردن روباتهای گوگل از تگ:
<meta name=”googlebot” content=”noindex” />
استفاده میکنیم. در صورت مشاهده این تگ در هدر یک صفحه گوگل بهطورکلی آن را از نتایج جستجوی خود خارج خواهد کرد.
آشنایی با دستورات فایل robots.txt و کاربرد آنها
فایل robots.txt سایت شما از دو فرمان کلی پیروی میکند که برای ربات گوگل GoogleBot یک دستور دیگر نیز اضافه میشود.با بهکارگیری این دو دستور، شما قادر خواهید بود قوانین مختلفی را راستای دسترسی رباتهای خزندهٔ موتورهای جستجوگر برای ورود به سایتتان وضع کنید. این قوانین عبارتاند از:
User-agent
این دستور برای هدفگیری یک ربات خاص بهکاربرده میشود. این دستور را میتوان به دو شکل در فایل robots.txt به کاربرد.اگر میخواهید به تمام رباتهای خزنده یک دستور را بدهید، فقط کافی است بعد از عبارت User-agent از علامت “*” استفاده کنید. مانند زیر:
* : User-agent
دستور بالا به این معنا است که “دستورات فایل، برای همه رباتهای جستجوگر یکسان عمل میکند”.
اما اگر میخواهید تنها به یک ربات خاص مانند ربات گوگل GoogleBot دستور خاصی را بدهید، دستور شما باید به شکل زیر نوشته شود:
User-agent: Googlebot
کد بالا به این معنی است که “اجرای دستورات فایل، تنها برای ربات گوگل الزامی است”.
Disallow
دستور Disallow به رباتها میگوید که چه فولدرهایی از سایت شمارا نباید بررسی کنند. در حقیقت این دستور، بیانگر آدرس صفحهای است که میخواهید از دید روباتها پنهان بماند.
برای مثال اگر مایل نیستید موتورهای جستجو، تصاویر سایت شمارا ایندکس کنند، میتوانید تمام تصاویر سایت را درون یک پوشه در هاستینگ خود قرار دهید و از دسترس موتورهای جستجو خارج سازید.فرض کنیم که تمام این تصاویر را به درون فولدر “Photos” منتقل کردهاید. برای آنکه به موتورهای جستجو بگویید که این تصاویر را ایندکس نکند، باید دستوری مانند زیر را بنویسید:
* :User-agent
Disallow: /photos
با واردکردن دو خط کد بالا در فایل robots.txt، به هیچیک از رباتهای جستجوگر اجازه ورود به فولدر تصاویر سایت را نمیدهد. در کد دستوری بالا، قسمت “User-agent: *” بیانگر این است که اجرای این دستور برای تمامی رباتهای جستجو ضروری است. قسمت “Disallow: /photos” میگوید که ربات، اجازه ورود یا ایندکس پوشه تصاویر سایت را ندارد.
Allow
موتور جستجوی گوگل چندین نوع روبات مخصوص به خود دارد که معروفترین آنها بانام Googlebot شناخته میشود و وظیفه بررسی و ایندکس صفحات وب را بر عهده دارد. این ربات نسبت به سایر رباتهای جستجوگر، دستورات بیشتری را متوجه میشود. علاوه بر دستورات “User-agent” و “Disallow”، ربات گوگل دستور دیگری به نام “Allow” را نیز درک میکند.
دستور Allow به شما امکان میدهد تا به ربات گوگل بگویید که اجازه مشاهده یک فایل، در فولدری که Disallowed شده را دارد. برای درک بهتر این دستور، اجازه بدهید که از مثال قبلی استفاده کنیم، بهتر نیست؟
در مثال قبل رشته کدی را قراردادیم که به رباتهای جستجو، اجازه دسترسی به تصاویر سایت را نمیداد. تمام تصاویر سایت را درون یک پوشه به نام Photos قراردادیم و با دستور زیر یک فایل robots.txt ایجاد کردیم:
* :User-agent
Disallow: /photos
حال تصور کنید درون این پوشهٔ ما که در هاستینگ سایت قرار دارد، تصویری به نام seo.png وجود دارد که میخواهیم Googlebot آن را ایندکس کند. با استفاده از دستور Allow میتوانیم به ربات گوگل بگوییم که این کار را انجام دهد:
* :User-agent
Disallow: /photos
Allow: /photos/seo.png
این دستور به ربات گوگل میگوید که اجازه مشاهده و ایندکسِ فایل seo.png را دارد، علیرغم اینکه فولدر Photos از دسترس رباتها خارجشده است.
آموزش ساخت فایل robots.txt
همانطور که در بهطور کامل توضیح دادیم برای مدیریت رباتهای موتورهای جستجو از دو دستور اصلی که شامل User-agent و Disallow است استفاده میشود.
با ترکیب این دو دستور شما قادر خواهید بود قوانین مختلفی برای دسترسی به صفحات داخلی سایت خود وضع کنید. برای مثال با یک User-agent میتوان مشخص کرد چندین آدرس را معرفی نمود و یا برعکس این کار.
شما میتوانید با قرار دادن نام هر یک از رباتها بهعنوان User-agent قوانین معینی برای آنها تعریف کنید و با استفاده از کاراکتر بهجای نام در فایل robots.txt یک قانون را برای همه روباتها اعمال کنید. مانند:
* :User-agent
/Disallow: /folder1
موتور جستجوی گوگل چندین نوع روبات مختص به خود را دارد که معروفترین آنها بانام Googlebot شناخته میشود و وظیفه بررسی و ایندکس صفحات وب را عهدهدار است. روبات Gogglebot-image نیز موظف به بررسی تصاویر سایتها و ایندکس کردن آنها است.
User-Agent: Googlebot
/Disallow: /folder2
همچنین شما قادر هستید بهروشهای مختلفی قوانین خود را اعمال کنید، میتوان یک صفحه مشخص و یا یک دسته از صفحات را برای یک دستور تعریف کنید. مثالهای زیر روشهای مختلف استفاده از این دستورات است:
برای جلوگیری از دسترسی روباتها به تمام محتویات سایت از کاراکتر / استفاده میکنیم
/:Disallow
برای جلوگیری از دسترسی به یک فولدر یا دسته از سایت نام آن را وارد کنید
/Disallow: /blog
برای اعمال محدودیت روی یک صفحه خاص آدرس دقیق آن را بدون نام سایت وارد کنید
/Disallow: /blog/keyword-planner
برای محدود کردن یک تصویر بر روی سایت آدرس آن را به همراه User-agent مربوط به آن وارد کنید
User-agent: Googlebot-Image
Disallow: /images/seo.jpg
و برای پنهان کردن تمام تصاویر موجود بر روی سایت از دید موتورهای جستجو از دستور زیر استفاده کنید
User-agent: Googlebot-Image
/:Disallow
همچنین شما میتوانید یک نوع فایل مشخص را از دید موتورهای جستجو مخفی نگهدارید، بهعنوانمثال برای تصاویری با فرمت gif
User-agent: Googlebot
$Disallow: /*.gif
همچنین، شما میتوانید فایل robots.txt خود را به سایت مپ xml لینک کنید. که در ادامه مطلب بهطور کامل توضیح خواهیم داد.
چهبسا این دستورات را بسیار ساده بپندارید اما همین دستورات بهکلی میتوانند سیاست سئوی سایت شمارا تغییر دهند. البته در نظر داشته باشید که فایل robots.txt نسبت به بزرگ و کوچک بودن حروف لاتین حساس بوده و آدرس صفحات باید بهدقت وارد شوند. پس از ساخت فایل موردنظر خود و ذخیره آن در فرمت txt آن را بر روی سرور و در ریشه اصلی کپی کنید. دستورات اعمالشده برای روباتهایی هستند که ازاینپس به سایت شما وارد میشوند.
چگونه یک فایل Robots.txt حاوی موقعیت نقشه سایت ایجاد کنیم؟
در ادامه سه مرحله آسان برای ساخت یک فایل robots.txt حاوی موقعیت نقشه سایت را برایتان شرح میدهیم:
مرحله اول: تعیین URL سایت مپ
URL مربوط به نقشه سایت (سایت مپ) بیشتر چنین شکلی دارد:
http://www.example.com/sitemap.xml
بنابراین کافی است این URL را در نوار آدرس مرورگر خود بنویسید و بجای عبارت example، آدرس دامنه سایتتان را وارد کنید.همچنین میتوانید محل سایت مپ خود را به کمک جستجوی گوگل و استفاده از موتورهای جستجو همانند اشکال زیر تعیین کنید:
site:example.com filetype:xml
و یا
filetype:xml site:example.com inurl:sitemap
اما این روش فقط در صورتی جواب میدهد که سایت شما از قبل توسط گوگل بررسی و ایندکس شده باشد.اگر هیچ نقشه سایتی در سایت خود پیدا نکردید، میتوانید خودتان با استفاده از ابزار ساخت نقشه سایت، یا دنبال کردن روش توضیح دادهشده در Sitemaps.org یک نقشه سایت ایجاد کنید.
مرحله دوم: پیدا کردن فایل Robots.txt
برای شناسایی اینکه آیا سایت شما فایل robots.txt دارد یا خیر، میتوانید عبارت example.com/robots.txt را تایپ کنید. با انجام این کار، با 3 موقعیت روبرو خواهید شد:
- به فایل txt را مشاهده می کنید.
- به یک فایل خالی (بدون محتوا) دسترسی پیدا میکنید.
- با ارور 404 مواجه خواهید شد.
چنانچه با یک فایل خالی یا ارور 404 مواجه شدید، زمان آن است که فایل خود را بسازید.
مرحله سوم: اضافه کردن موقعیت نقشه سایت به فایل robots.txt
اکنون فایل robots.txt سایت خود بازکنید. برای آسان پیدا کردن خودکار نقشه سایت شما از طریق robots.txt، تمامکاری که باید انجام دهید این است که همانند شکل زیر یک دستور را همراه با URL موردنظر به فایل robots.txt اضافه کنید:
Sitemap: http://www.example.com/sitemap.xml
درنتیجه فایل robots.txt به این شکل خواهد بود:
Sitemap: http://www.example.com/sitemap.xml
* :User-agent
:Disallow
نکته: دستوری که حاوی موقعیت نقشه سایت است را میتوانید در هر جای فایل robots.txt قرار دهید. این دستور از خط دستور user-agent مستقل است، درنتیجه تفاوت چندانی ندارد کجا قرار بگیرد.
با توجه به اینکه هر Sitemaps نمیتواند بیش از ۵۰۰۰ URL داشته باشد. پس در مورد سایتهای بزرگتر که URL های فراوانی دارد، میتوانید چند فایل Sitemaps بسازید. باید موقعیت این چند فایل سایت مپ را در یک فایل فهرست نقشه سایت بگذارید. فرمت XML فایل sitemap index مشابه فایل نقشه سایت است، یعنی درواقع یک نقشه سایت مربوط به نقشههای سایت است.وقتی چند نقشه سایت دارید، میتوانید URL مربوط به فایل فهرست نقشههای سایت را همانند مثال زیر در فایل robots.txt قرار دهید:
Sitemap: http://www.example.com/sitemap_index.xml
* :User-agent
Disallow
و یا میتوانید تکتک URL های چند فایل نقشه سایتی که دارید را مشخص کنید، همانند شکل زیر:
Sitemap: http://www.example.com/sitemap_host1.xml
Sitemap: http://www.example.com/sitemap_host2.xml
* :User-agent
Disallow
بهطورکلی توصیه میشود که همیشه دستور فرعی ‘Sitemap’ را در کنار URL نقشه سایت در فایل robots.txt قرار دهید. اما در برخی موارد مشاهدهشده است که این کار باعث بروز خطاهایی میشود. میتوانید حدود یک هفته بعدازاینکه فایل robots.txt را بهروزرسانی کردید و موقعیت نقشه سایت را در آن قراردادید، برای بررسی وجود چنین خطاهایی از ابزار سرچ کنسول گوگل استفاده کنید.
برای جلوگیری از بروز این خطا، توصیه میشود که بعد از URL نقشه سایت یک خط را خالی بگذارید.
چطور یک فایل Robots.txt در وردپرس ایجاد کنیم؟
دو راه برای ساخت و ویرایش فایل Robots.txt در وردپرس وجود دارد که بهدلخواه، هرکدام را که میخواهید میتوانید انتخاب کنید.
روش اول: ساخت و ویرایش فایل Robots.txt توسط افزونه Yoast SEO
اگر از افزونه Yoast SEO استفاده میکنید، پس میتوانید از تولیدکننده فایل Robots.txt این افزونه نیز استفاده کنید. شما میتوانید با استفاده از ادیتور Robotx.txt این افزونه، فایل Robots.txt برای سایت خود ایجاد کرده و آن را ویرایش کنید.
کافی است از قسمت پیشخوان وردپرس وارد بخش سئو > ابزارها شوید و بر روی ویرایشگر فایل کلیک کنید این ابزار به شما این امکان را میدهد که بهسرعت پروندههای مهم سئو مانند فایل robots.txt و.htaccess را بهسادگی تغییر دهید.
در این صفحه افزونه Yoast SEO فایل فعلی Robots.txt شمارا نمایش میدهد. درصورتیکه فایل Robots.txt ندارید، میتوانید به کمک افزونه یوست سئو آن را ایجاد کنید.
حالا میتوانید دستورات مختص خود را در فایل جایگزین کنید. و سپس بر روی ذخیره تنظیمات کلیک کنید.
روش دوم: ویرایش فایل Robots.txt بهصورت دستی با استفاده از FTP
در این روش شما نیاز به یک سرویسگیرنده FTP برای ویرایش فایل Robots.txt دارید.به هاست وردپرس سایت خود با استفاده از یک گیرنده FTP متصل شوید.طبق تصویری که مشاهده میکنید، شما میتوانید فایل Robots.txt را در ریشه سایت خود مشاهده کنید.
اگر شما فایلی بانام Robots.txt مشاهده نمیکنید، به این معناست که سایت شما آن فایل را ندارد. اما نگران نباشید، خیلی ساده یک فایل ایجاد کنید و نام آن را robots.txt قرار دهید.
فایل Robots.txt یک فایل متنی ساده است. این جمله بدین معناست که شما میتوانید فایل Robots.txt سایت خود را دانلود کرده و آن را در کامپیوتر شخصی خود با استفاده از نرمافزارهای ویرایشگر، ویرایش کنید و پس از اعمال تغییرات، مجدداً آن را در ریشههاست سایت خود آپلود کنید.
آزمایش فایل robots.txt در بخش robots.txt tester سرچ کنسول گوگل
حال که فایل robots.txt خود را ایجاد کردهاید، زمان آن است که از درستی عملکرد آن اطمینان یابید. گوگل در ابزار سرچ کنسول، ابزاری رایگان به نام robots.txt tester را در دسترس وبمسترها قرار داده است.برای آزمایش فایل خود ابتدا وارد اکانت کنسول جستجوی خود شوید.
سایت موردنظر خود را انتخاب کنید و از منوی سایدبار بر روی گزینه Crawl کلیک کنید.
پس از باز شدن کشوی Crawl، ابزار robots.txt tester را مشاهده میکنید. بر روی آن کلیک کنید.
اگر بهطور پیشفرض، دستوری در باکس موردنظر وجود دارد، آن را پاککرده و دستورات جدید را وارد نمایید.
درنهایت، پس از واردکردن دستورات، بر روی گزینه Test که در پایین صفحه در سمت راست قرار دارد، کلیک کنید.اگر نوشته دکمه از Test به Allowed تغییر یافت به این معنی است که فایل robots.txt شما معتبر است.
حرف آخر:
باید توجه داشته باشید که استفاده نادرست از فایل robots.txt میتواند به ضرر سایت شما تمام شود. بنابراین قبل از انجام هرگونه تغییرات اساسی در این فایل حتماً با یک متخصص سئو مشورت کنید و کدهای واردشده را چند بار موردسنجش و بازنویسی قرار دهید. درصورتیکه در هر یک از مواردی که در این نوشته بیانشده مشکل، سؤال ابهامی دارید متوانید از بخش دیدگاهها مطرح کنید و تا حد توان کارشناسان ما پاسخ گوی شما خواهند بود.
سپاس فراوان از شما
بیشتر از ۱۰ تا مقاله در این مورد خوندم اما شما با شکل و توضیحات کامل بهترین ارائه رو انجام دادی
سلام. من طبق آموزش که نوشتید با افزونه yoast نمیتونم فایل Robots.txt و .htaccess رو بسازم باید چی کار کنم؟
سلام دوست عزیز
به احتمال زیاد مشکل شما از هاست و دسترسی فایل هست که اجازه ساخت رو نمیده.شما میتونید طبق آموزشی این فایل رو به صورت دستی بسازید و در هاستتتون آپلود کنید.
با توجه به اینکه وقتی در آدرس بار بعداز دامنه robots.txt را وارد میکنم و برای بنده User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php را میاره آیا میشه یک فایل Robots.txt ساخت یعنی خللی ایجاد نمیکنه برام؟
سلام دوست عزیز
خیر مشکلی ایجاد نخواهد کرد.می تونید ویرایش کنید.
سلام ، آیا داشتن چند سایت مپ اتفاق بدی است؟
وقتی محتوای سایت بروزرسانی می شود بهتر است سایت مپ دیگری ایجاد کرد و چند سایت مپ به گوگل معرفی کرد؟ یا سایت مپ قبلی را حذف و سایت مپ جدید را جایگزین کنیم؟
سلام
داشتن چند نقشه سایت ضرورتی ندارد ولی در برخی از موارد با توجه به تعداد زیاد صفحات و موضوعات یک سایت ساخت چند نقشه سایت لازم هست اگر سایت مپ شما بیشتر از 50000 آدرس در خود داشته باشد. گوگل توصیه میکند سایت خود را به چند فایل نقشه سایت کوچکتر تقسیم کنید. در اینصورت فایل مربوط به هر سایت مپ باید در یک فایل ایندکس نقشه سایت (Sitemap index file) لیست شود.
اگر شما از سیستم مدیریت محتوای وردپرس و افزونه Yoast SEO استفاده کنید نیازی به بروز رسانی سایت مپ با انتشار هر مطلب یا بروزرسانی محتوا نخواهید داشتید این افزونه به صورت اتوماتیک تغییرات رو در سایت مپ اعمال خواهد کرد.
سلام، فایل robots.txt سایت من به این شکله:
user-agent:*
disallow:/
الان سایت هیچ کدام از صفحاتش توسط ربات ها crawls نمیشود؟
سلام میخوام کل سایتم به جز پوشه ادمین توسط ربات های گوگل بررسی بشه این دستور صحیح هست؟
User-agent: *
Disallow: /wp-admin/
سلام
بله کدی که استفاده کردید مناسب هست
سلام. سایت من، پوشه روبوت نداره. ولی سرچ کنسول، خطا میده واسه فولدر وردپرس ادمین. دیدم که پیام قبلی، نوشتن که میخوان این فولدر، دیسالو بشه. دیسالو بودن فولدر وردپرس ادمین، برای امنیت سایت و یا سئو، مفید هست یا مضر.
سلام
در اولین اقدام فایل Robots.txt رو ایجاد کنید.نیازی به ایندکس شدن پوشه ادمین نیست به همین خاطر Disallow بودنش مطلوب هست
سلام،آیا میتونم سطح دسترسی به wp-includes را محدود کنیم؟ این محدودیت سازی ها تاثیری بر روی سئو سایت نداره؟
سلام، بله میتونید محدود کنید.و این موضوع ارتباطی با سئو نداره.
بسیار عالی بود متشکر
سلام وقت بخیر
من مشکلی برام پیش اومده من زمانی داخل روبوتس دات تی اکس تی دسترسی ربات های گوگل رو به سایت بسته بودم. الان به حالت دیفالت برگردوندم و دسترسی همه بازه اما همچنان گوگل سرچ کنسول به من اخطار میده که ربات ها توسط روبوتس دات تی اکس تی بلاک شدن و صفحات کراول نمیشن.
دلیلش چی میتونه باشه؟ ممنون میشم کمکم کنید.