فایل robots.txt یکی از اصلی ترین روشهایی است که با استفاده از آن میتوان برای موتورهای جستجوگر مشخص کرد برای چه مواردی میتوانند و برای چه مواردی نمیتوانند به وب سایت شما مراجعه کنند. اکثریت موتورهای جستجوگر مهم از قابلیت های پایه ای ارائه شده پشتیبانی مینمایند، اما بعضی هم، یک سری قوانین اضافی اعمال میکنند که میتواند مفید باشد. این دستورالعمل تمام روشهای استفاده از robots.txt در وب سایت شما را پوشش خواهد داد.
اخطار!
بروز هرگونه اشتباه از جانب کاربر در robots.txt میتواند به طور جدی به وب سایت شما آسیب وارد کند، لذا قبل از شروع به کار اطمینان حاصل فرمایید که کلیه موارد مندرج در این مقاله خوانده و به طور کامل متوجه شدهاید.
فایل robots.txt چیست؟
فایل robots.txt یک فایل متنی است که به وسیله موتورهای جستجو (و سایر سیستم ها) مرور می شود. این فایل که بعضا “پروتکل استثنا از روباتها” نیز نامیده میشود، نتیجه اتفاق نظر طراحان اولیه موتورهای جستجوگر است و یک استاندارد رسمی که توسط یک مرجع تنظیم مقررات وضع شده باشد، نیست.هرچند تمامی موتورهای جستجوگر بزرگ پایبندی خود را به آن حفظ نمودهاند.
فایل robots.txt چه کاری انجام میدهد؟
موتورهای جستجوگر با گردش در بین صفحات وب آنها را پیدا کرده و آنها را فهرست می نمایند. در این زمان، لینکها را پیدا کرده و دنبال می کنند. این کار باعث میشود که از سایت الف به سایت ب و از سایت ب به سایت ج رفته و الی آخر. ولی پیش از آنکه موتور جستجوگر از هر صفحه روی دامینی که قبلا با آن مواجه نشده، بازدید کند، فایل robots.txt آن دامنه را مرور می کند که مشخص میکند که بازدید از کدامیک از URL های موجود در آن وب سایت برای موتورهای جستجوگر مجاز یا غیرمجاز است.
فایل robots.txt را در کجا قرار بدهم؟
فایل robots.txt بایستی همیشه در ادامه دامنه وب سایت شما باشد اگر برای مثال دامنه وب سایت شما فرضاwww.example.com است فایل robots.txt را بایستی در www.example.com/robots.txt پیدا کنید. در واقع بسیار حائز اهمیت است که فایل robots.txt دقیقا به همین صورت نوشته شود زیرا به حروف بزرگ و کوچک حساس بوده و به غیر از حالت ذکر شده کار نخواهد کرد.
موافقان و مخالفان استفاده از robots.txt
موافقان: مدیریت بودجه خزش
به طور کلی اینطور استنباط میشود که زمانی که اسپایدرهای موتور جستجوگر به یک وب سایت برخورد میکنند، دارای یک میزان سهمیه مشخص برای خزش در صفحات هستند که بر اساس اینکه چقدر منابع و زمان بر اساس فاکتورهای مختلف (از قبیل میزان مجوزهای صادرشده، اندازه سایت، معروف بودن سایت، ومیزان بازدهی مفید سرور)، صرف میشود، متغیر است. متخصصین سئو این امر را مدیریت بودجه خزش مینامند.
اگر تصور میکنید وب سایت شما به بودجه خزش به مشکل خواهد خورد مسدود کردن قسمتهای غیر ضروری سایت باعث خواهد شد تا موتورهای جستجوگر روی بخشهای مهمتر متمرکز شوند و همین امر برای جلوگیری از هدر رفتن انرژی موتورهای جستجوگر بسیار لازم است.
گاهی اوقات اینکه موتورهای جستجوگر نتوانند در بخشهای مشکل دار سایت شما خزش کنند مفید خواهد بود مخصوصا در قسمت هایی که بایستی پاکسازی سئو انجام شود. بعد از اینکه مرتب سازی ها انجام شد مجددا میتوانید به موتورهای جستجوگر اجازه خزش در آن بخشها را بدهید.
یک نکته در خصوص مسدود کردن شاخصه های پرسش و پاسخ
زمانی بودجه خزش دارای اهمیت میشود که وب سایت شما از یک سری شاخصه های های پرسش و پاسخ برای فیلتر کردن و مرتب کردن نتایج استفاده میکند. فرض کنیم وب سایت شما 10 شاخصه جستجوی مختلف دارد که هرکدام دارای مقادیر متفاوتی بوده و میتوانند در ترکیب های مختلف استفاده شوند (مثل تی شرت هایی با سایز و رنگهای مختلف) که منجر به ایجاد URL های معتبر مختلف میشود و همگی تحت خزش قرار میگیرند. مسدود کردن خزش برای شاخصه های پرسش و پاسخ، به شما کمک خواهد کرد تا موتورهای جستجوگر فقط URL اصلی وب سایت شما را بررسی کنند، در غیر اینصورت در دام بزرگی که شما ناخودآگاه برایش فراهم کردهاید خواهند افتاد.
مخالفان: عدم حذف صفحه از نتایج جستجو
حتی با وجود استفاده از فایل robots.txt برای جلوگیری از ورود اسپایدرها به بخشهای مختلف وب سایتتان نمیتوانید برای موتورهای جستجوگر مشخص کنید که کدام یک از URL ها در موتورهای جستجوگر نمایش داده نشوند، به عبارت دیگر مسدود سازی، مانع از نمایش نتایج نخواهد شد. اگر موتورهای جستجوگر پیوندهای کافی به آن URLرا پیدا کنند آن را در نتایج خود لحاظ خواهند کرد و از محتویات آن صفحه اطلاعی ندارند بنابراین نتیجه کلی به شکل زیر خواهد بود:
https://www.example.com/blocked-directory/
توضیح برای این نتیجه، به دلیل robots.txt این سایت، موجود نیست. بیشتر بدانید.
اگر واقعا میخواهید صفحهای را به طور قطع از نتایج جستجو حذف نمایید بایستی از تگ متا روباتهای نوایندکس استفاده کنید. این بدان معنی است که برای یافتن تگ نو ایندکس، موتورهای جستجوگر بایستی بتوانند به آن صفحه دسترسی داشته باشند، پس آن را با استفاده از فایل robots.txt مسدود نکنید.
مخالفان: مانع افزایش ارزش لینک میشود
اگر یک موتور جستجوگر قادر نباشد صفحه ای را خزش کند، نمی تواند مقدار ارزش لینک را در میان لینکهای موجود در آن صفحه ارزیابی کند. زمانی که صفحه ای توسط فایل robots.txt مسدود می-گردد، به یک بن بست برمیخوریم. هر مقدار ارزش لینکی که ممکن است به آن صفحه یا از طریق آن ایجاد شده باشد، از بین خواهد رفت.
دستور زبانی فایل robots.txt
یک فایل robots.txt متشکل از یک یا چند بلوک دستورالعملی است که هرکدام با یک خط کاربر- عامل شروع می گردد. کاربر- عامل نام اسپایدر خاصی است که آدرس دهی میشود. می توانید یک بلوک برای تمامی موتورهای جستجوگر با استفاده از یک وایلد کارت برای کاربر- عامل خاص داشته باشید و یا از یک بلوک خاص برای یک موتور جستجوگر خاص استفاده نمایید. اسپایدر موتور جستجوگر همیشه بلوکی را انتخاب خواهد کرد که بیشترین میزان همخوانی با نامش را داشته باشد.
بلوکها به شکل زیر خواهند بود، (وحشت نکنید در ادامه توضیح خواهیم داد)
User-agent: *
Disallow: /
User-agent: Googlebot
Disallow:
User-agent: bingbot
Disallow: /not-for-bing/
دستورالعملهای مانند Allowو Disallow به حروف کوچک یا بزرگ حساس نیستند و انتخاب با شماست که آنها را با حروف بزرگ بنویسید یا با حروف کوچک. مقادیر به حروف بزرگ و کوچک حساس هستند. مثلا /photo/برابر /Photo/ نیست. ما بیشتر مایلیم که دستورالعملهای را به صورت برجسته بنویسیم زیرا خواندن فایلها را برای انسانها ساده تر میکند
دستورالعمل کاربر- عامل
اولین قسمت از هر بخش از یک دستورالعمل ها، عامل-کاربر است که یک اسپایدر خاص را شناسایی مینماید. قسمت کاربر-عامل دستورالعمل با قسمت کاربر-عامل یک اسپایدر خاص که معمولا طولانی تر است منطبق میگردد. لذا به عنوان مثال مرسوم ترین اسپایدر گوگل دارای کاربر-عامل زیر است:
Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
بنابراین اگر میخواهید به اسپایدر بگویید که چه کاری انجام دهد، یک خط دستوری نسبتا ساده مانند User-agent: Googlebot کار شما را راه خواهد انداخت.
اغلب موتورهای جستجوگر دارای چندین اسپایدر هستند. و از یک اسپایدر خاص برای یک منظور خاص استفاده میکنند مثلا برای فهرست معمول، برای برنامه های تبلیغاتی، برای تصاویر، برای فیلم و غیره.
موتورهای جستجوگر همیشه به دنبال انتخاب مشخص ترین دستورالعمل هایی هستند که میتوانند پیدا کنند. بنابراین با سه دسته دستورالعمل مواجهیم. یکی برای *یکی برای Googlebot و یکی برای Googlebot-News اگر ربات با کاربر-عاملی مواجه شود که Googlebot-Video باشد، از Googlebot restrictions تبعیت خواهد کرد. ربات با کاربر-عامل Googlebot-News از دستورالعملعهای خاص Googlebot-News تبعیت خواهد نمود.
مرسوم ترین عامل های کاربری اسپایدرهای های موتورهای جستجوگر
در ادامه فهرستی از عاملهای کاربری ارائه میگردد که می توانید در فایل robots.txt خود برای مطابقت با موتورهای جستجوگر متداول استفاده نمایید
موتور جستجو | زمینه | عامل کاربر |
Baidu | عمومی | Baidu |
Baidu | عکس | Baidu |
Baidu | موبایل | Baidu |
Baidu | اخبار | Baidu |
Baidu | فیلم | Baidu |
Bing | عمومی | Bing |
Bing | عمومی | Bing |
Bing | عکس و فیلم | Bing |
Bing | تبلیغات | Bing |
عمومی | ||
عکس | ||
موبایل | ||
اخبار | ||
فیلم | ||
اد سنس | ||
ادوردز | ||
Yahoo | عمومی | Yahoo |
Yandex | عمومی | Yandex |
دستورالعمل عدم صدور مجوز
دومین خط در هر بلوک دستورالعمل مربوط به عدم صدور مجوز است. این امکان وجود دارد که یک یا چند مورد خط دستوری داشته باشید، تا معین کنید هر اسپایدر خاص به کدام قسمت از وب سایت دسترسی نداشته باشد. خط دستوری Disallow خالی به این معنی است که برای چیزی عدم دسترسی تعریف نکردهاید که به این معنی است که اسپایدرها میتوانند به تمامی بخشها دسترسی داشته باشند.
در مثال پایینی تمامی موتورهای جستجوگری که از فایل robots.txt تبعیت میکنند، از خزش در وب سایت شما خودداری خواهند کرد.
User-agent: *
Disallow: /
تنها با حذف یک کاراکتر، در نمونه زیر به تمامی موتورهای جستجوگر اجازه می دهید تا کل سایت شما را جستجو کنند.
User-agent: *
Disallow:
نمونه زیر قادر خواهد بود مانع جستجوی موتور جستجوگر گوگل در فهرست عکس سایت شما و هر چیزی که درون آن وجود دارد، شود.
User-agent: googlebot
Disallow: /Photo
این بدان معنی است که تمام زیرمجموعه های بخش /Photo نیز مورد جستجو قرار نخواهد گرفت. اما مانع از خزش گوگل در زیرشاخههای /photo نخواهد شد زیرا نسبت به حروف کوچک و بزرگ حساس است.
همچنین این امر باعث میشود که موتور جستجوی گوگل نتواند به URL های که به نوعی /Photo را شامل میشود، مانند /Photography/ دسترسی پیدا کند.
نحوه استفاده از وایلد کارتها / عبارات مرتب
استاندارد فایل robots.txt از عبارات منظم یا وایلد کارتها به صورت رسمی پشتیبانی نمیکند، با وجود این، برای تمام موتورهای جستجوگر اصلی قابل فهم هست. یعنی میتوانید با یک خط دستوری مثل مورد زیر گروهی از فایلها را مسدود نمایید.
Disallow: /*.php
Disallow: /copyrighted-images/*.jpg
در مثال بالا * به هر چیزی که با نام آن فایل مطابقت داشته باشد اطلاق خواهد شد توجه داشته باشید که مابقی خط دستوری همچنان به حروف کوچک و بزرگ حساس است لذا در خط دوم نمونه بالا فایلی را که برای مثال تحت عنوان /copyrighted-images/example.JPG باشد را مسدود نخواهد کرد.
برخی موتورهای جستجوگر، مانند گوگل، عبارات منظم پیچیده تری را مجاز دانسته، اما دقت بفرمایید که ممکن است بعضی از موتورهای جستجوگر این منطق را درک نکنند. پرکاربردترین ویژگی که میتوان استفاده نمود $ است که بیانگر اتمام URL است. در مثال زیر میتوانید مشاهده بفرمایید که چه کاری انجام میدهد.
Disallow: /*.php$
یعنی /index.php نمیتواند، ولی /index.php?p=1 میتواند لیست بشود. هرچند که بسیار مفید است اما میتواند خطرناک نیز باشد و به راحتی تمامی مواردی که میخواستید مسدود بمانند را از انسداد خارج خواهد کرد.
دستورالعملهای غیراستاندارد خزش robots.txt
همانند دستورالعملهای Disallow و User-agent گروه دیگری از دستورالعملهای خزش نیز وجود دارد که میتوانید از آنها استفاده نمایید. همه این دستورالعمل ها توسط اسپایدرهای های موتورهای جستجوگر پشتیبانی نمی شوند، بنابراین قبل از استفاده از آنها مطمئن شوید که از محدودیت های موجود مطلع هستید.
دستورالعمل صدور مجوز
هرچند در لیست مشخصات اصلی قید نشده بود، ولی در خصوص دستورالعملهای صدور مجوز خیلی زود بحث شد.
به نظر می رسد بیشتر موتورهای جستجوگر منطق آن را متوجه میشوند، همچنین دستورالعمل های بسیار ساده وقابل فهم مانند مثال زیر را اجرا می کند:
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
یک راه حل دیگر برای حصول نتیجه مشابه، بدون دستورالعمل صدور مجوز این است که به طور خاص برای تک تک پرونده های موجود در پوشه wp-admin مجوز صادر نشود.
دستورالعمل میزبانی
این دستورالعمل با پشتیبانی یاندکس و نه گوگل، بر خلاف آنچه بعضی از سایتها عنوان میکنند ، به شما این امکان را می دهد که تصمیم گیری کنید که آیا می خواهید موتور جستجو example.com یا www.example.com را نمایش دهد. که به سادگی مورد زیر قابل انجام است.
host: example.com
اما به دلیل اینکه که فقط موتور جستجوگر یاندکس از این دستورالعمل پشتیبانی میکند، استفاده از آن توصیه نمیشود، به ویژه اینکه به شما امکان تعریف یک طرح (http یا https) را نیز نمی دهد. راه حل بهتری که با همه موتورهای جستجوگر همخوانی دارد این است که نام دامنه ای را که نمیخواهد فهرست شود به نام دامنه ای که میخواهید فهرست شود هدایت کنید مثلا خود ما www.yoast.com را به yoast.com منتقل کردهایم.
دستورالعمل تاخیر خزش
گاهی اوقات موتورهای جستجوگر بینگ و یاندکس بسیار مشتاق انجام خزش هستند. اما خوشبختانه نسبت به دستورالعملهای تاخیر خزش نیز واکنش نشان داده و سرعت آنها را کاهش دهد. و هر چند تفاوتهایی بین موتورهای جستجوگر در نحوه قرائت این دستورالعملها وجود دارد اما نتیجه همیشه یکسان است.
خط دستوری مانند مورد زیر، به موتورهای جستجوگر فرمان میدهد که تعداد دفعات سرکشی به صفحات وب سایت شما را تغییر دهند.
crawl-delay: 10
در هنگام استفاده از دستورالعمل تاخیر خزش مراقب باشید. با تنظیم تاخیر خزیدن روی ده ثانیه، به موتورهای جستجوگر این اجازه را میدهید که روزانه فقط به 8،640 صفحه دسترسی پیدا کنند. شاید این مقدار برای یک سایت کوچک عدد بزرگی به نظر برسد، اما در سایت های بزرگ حجم زیادی نیست. از طرف دیگر، اگر از سمت موتورهای جستجوگر بازدیدی ندارید، دستورالعمل تاخیر خزش راه حل مناسبی برای صرفه جویی در پهنای باند خواهد بود.
دستورالعمل نقشه سایت برای نقشه سایت های XML
با استفاده از دستور العمل sitemap میتوانید برای موتورهای جستجوگر به ویژه گوگل، بینگ و یاندکس مشخص کنید که نقشه سایت XML شما را در کجا پیدا کنند. همچنین می توانید نقشه های سایت XML خود را با استفاده از نرم افزاری بر پایه وب مخصوص هر موتور جستجو به طور مجزا ارسال کنید، اکیدا توصیه میشود که همین روش را استفاده کنید، زیرا برنامه های نرم افزاری وبمستر هر موتور جستجو اطلاعات بسیار ارزشمندی در مورد سایت شما در اختیار شما قرار میدهند. اگر مایل به این کار نیستید، افزودن یک خط دستور sitemap به robots.txt یک راه حل جایگزین سریع است.
Sitemap: https://www.example.com/my-sitemap.xml
اعتبارسنجی robots.txt
ابزارهای متفاوتی وجود دارد که می تواند به شما در تایید اعتبار robots.txt کمک کند ، اما وقتی بحث از سنجش اعتبار دستورالعمل های خزش می شود، معمولا ترجیح بر این است که به منبع اصلی مراجعه نمایم. گوگل یک ابزار مخصوص سنج اعتبارrobots.txt در بخش جستجوی خود دارد که در زیر منوی نسخه قدیمی واقع شده و توصیه اکید میشود که حتما از آن استفاده نمایید.
قبل از اجرای نهایی حتما تغییرات خود را، به طور کامل بررسی کنید. در صورت استفاده اشتباه از robots.txt کل سایت تان مسدود شده و موتورهای جستجوگر سایت شما را به فراموشی خواهند سپرد!
بدون دیدگاه