تاکنون تمام سعی ما بر این بوده است که صفحات بیشتری از سایت خود را به بایگانی موتورهای جست و جو وارد کنیم. در این راه هر بار که متوجه می شویم گوگل صفحات بیشتری از سایت را خوانده است، احتمالا از خوشحالی فریاد می زنیم!
یک صفحه بیشتر در بایگانی گوگل درست به معنای یک بخت بیشتر در قرعه کشی است. صبر کنید! بهتر است بگوییم بخت های بیشتر، زیرا آن یک صفحه ممکن است با چندین عبارت مختلف قابل جست و جو باشد!
اما این تنها روی اول سکه است. روی دیگر سکه شاید جالب تر هم باشد! گاهی دوست نداریم موتورهای جست و جو بعضی از صفحات سایت را بخوانند و تصمیم می گیریم آنها را از بعضی از صفحات دور نگه داریم.
دلایل بسیاری برای این کار وجود دارد. به عنوان مثال یک استاد دانشگاه که نمرات دانشجویان را در سایت شخصی خود قرار داده است، ممکن است برای حفظ حریم خصوصی دانشجویان، چنین تصمیمی اتخاذ کند.
یا آدرس برخی مطالب مهم سایت تغییر کرده است و مدیر سایت تمایل ندارد موتور جست و جو آدرس قدیم را همچنان بخواند. مسیر سبد خرید در سایت می تواند گزینه مناسبی برای این کار باشد.
شد. همچنین صفحه سلب مسوولیت سایت ها نیز که معمولا حاوی کلمات خشک و نامفهوم حقوقی است، گزینه عامی گزینه عامی برای این دوست نداشتن است. رفتار روبوتها و بایگانی کردن صفحات سایت توسط موتور جست و جو را می توان طبق پروتکل هایی پذیرفته شده، کنترل کرد.
این پروتکل ها به صورت زیر می باشند
Robots.txt
XML Sitemap
Robots Meta Tag
Rel=Nofollow
از این چهار پروتکل معرفی شده، گزینه اول و دوم برای کل سایت تعریف می شوند گزینه سوم برای هر صفحه به طور جداگانه و گزینه چهارم نیز برای هر پیوند به صورت تک به تک مشخص می شود. بیشتر موتورهای جست و جو تمایل به پشتیبانی از این پروتکل ها دارند اما هیچ کدام مجبور به رعایت آن ها نیستند.
در واقع پروتکل های یاد شده فقط مواردی را به موتورهای جست و جو توصیه می کنند و رعایت و یا عدم رعایت این توصیه ها به موتورهای جست و جو بستگی دارد. موتور جست و جو به خودی خود فضول است اما اگر مودب باشد برای بها دادن به حریم خصوصی سایت ها این توصیه ها را رعایت می کند.
ROBOTS.TXT
می توان با یک فایل متنی بسیار ساده میزان دسترسی موتورهای جست و جو به محتوای سایت را کنترل کرد. این فایلrobots.txt نام دارد. موتور جست و جو قبل از محتوای سایت را کنترل کرد. این فایل آن که وارد سایتی شود، ابتدا فایل یاد شده را از سرور درخواست می کند و از تمام محدودیت های پیش روی خود در آن سایت آگاه می گردد.
نبود این فایل در یک سایت به معنای نبودن هیچ گونه محدودیتی برای تمام اسپایدرها است. موتور جست و جو بعد از آن که تمام فایل ها و مسیرهای ممنوع را دانست، شروع به خواندن مطالب سایت می کند. البته اگر یک اسپایدر مودب باشد، به محدودیت های موجود نیز احترام میگذارد! عده کمی از آنها به طور کامل و صد در صد به محتوای این فایل وفادارند.
تنظیمات نادرست موجود در این فایل می تواند به شدت به موفقیت سایت ضربه بزند بنابراین در آماده ساختن این فایل بسیار دقت کنید.
نوشتن ROBOTS
پروتکل روبوتز تنها دو دستور دارد که به کمک آنها محدودیت های زیر مشخص می شود:
- کدام اسپایدرها محدود شوند
- کدام مسیرها محدود شوندگ
USERAGENT
با این دستور روبوتها مشخص می شوند. روبوت (اسپایدر) هر موتور جست و جو نام مشخصی دارد و برای محدود کردن موتور جست و جو کافی است که نام روبوت آن را به همراه این دستور به کار گیریم. کاربرد این دستور به صورت زیر است:
useragent: robot name
به عنوان مثال وقتی که روبوت مورد نظر مربوط به گوگل است خواهیم داشت :
Useragent : Googlebot و برای بینگ: Useragent : Bingbot با هر دستور Useragent تنها می توان یک روبوت را مشخص کرد.
DISALLOW/ALLOW
با این دستور مسیرهای ممنوع/مجاز مشخص می شوند و به صورت زیر به کار می روند:
/disallow:/path
/allow:/path
/disallow:/sales
/disallow:/shoppingcard
allow:/site/search/map.php
allow:/iranforums/user
با هر دستور allow/dis تنها می توان یک مسیر را مشخص کرد و کاربرد آن به صورت زیر اشتباه است:
،/shopping/ disallow: /sales/
/allow: /site/search, /map
برای محدود کردن هر روبوت ابتدا آن را مشخص کرده و سپس تمام مسیرهای محدود شده برای آن ذکر می شود:
useragent: Googlebot
/disallow: /test
/disallow: /sales
در مثال زیر روبوت XGET از دسترسی به فولدرها و ۱، ۲ و ۳۳ منع شده است:
useragent: XGET
/diallow: /1
/disallow: /2
/disallow: /33
و با دستور زیر مقدم همه روبوتها در سایت گرامی داشته می شود:
*:useragent
:disallow
کاربرد * به همراه useragent به معنای تمام روبوت هاست. در مثال زیر خیلی ساده به تمام روبوت ها گفته می شود راه را اشتباه آمده اید، دور شوید
*:useragent
/:disallow
کاربرد / به همراه disallow به معنای تمام مسیرهاست، برای نوشتن توضیجا۔ فایل robots.txt از # به صورت زیر استفاده می شود:
*:useragent#
:disallow#
برای حذف تصویری مشخص از نتایج گوگل این گونه عمل کنید:
useragent: Googlebotimage
disallow: /images/picture.jpg
و برای حذف همه تصاویر از نتایج گوگل اینگونه عمل کنید:
useragent: Googlebotlmage
disallow: / Allow
در پروتکل robots.txt به طور استاندارد این دستور وجود ندارد اما با این حال گوگل و بینگ آن را پشتیبانی می کنند کاربرد آن بیشتر در مواردی است که می خواهید همه روبوت ها را از مسیری مشخص دور کنید و تنها به یک یا چند روبوت خاص اجازه دسترسی بدهید. مثال زیر را بررسی نمایید:
*:useragent
Disallow: /forums/rules
Disallow: /site/search
Useragent: Googlebot
Allow: /site/search
Allow: /forums/user
Useragent: Bingbot
Allow: /site/search
Allow: /forums/user
در این مثال همه روبوت ها به جز دو مورد از دسترسی به مسیرهایی مشخص، منع شدهforums / user /اند. توضیح بیشتری در این جا لازم است.
به معنی تمام مسیرهایی است که
forums/user/
در آن موجود است، یعنی مواردی مانند:
/forums/users /
forums/user/124/
/forums/users/messages/
در این مثال دسترسی به نوع خاصی از فایل ها برای گوگل محدود شده است:
Useragent: Googlebot
$Disallow: /*.gif
$Disallow: /*.eps
در تمام مثال های بررسی شده بزرگی و کوچکی مسیرها قاعده را تغییر میدهد. این دستور
*:Useragent
Disallow:/site/map.php
تنها برای فایل / map.php /site مؤثر است و نه برای site/map.php/.معمولا بهتر است این پروتکل را برای هر موتور جست و جو در صفحه راهنمای همان موتور جست و جو بررسی کنید. زیرا ممکن است موارد دیگری علاوه بر موارد اشاره شده را نیز پشتیبانی کند. برخی موارد مورد قبول گوگل در ادامه بررسی شده است.
Useragent: Googlebot
*/Disallow: /private
دستور بالا به معنای منع کردن گوگل از خواندن تمام پوشه هایی است که نام آنها با private شروع می شود
Useragent: Googlebot
این دستور به معنای منع کردن گوگل از بخشهایی است که بلافاصله بعد از نام وب سایت هر چیزی آمده است و بعد از آن علامت سؤال قرار دارد و باز هم بعد از علامت سؤال هر چیز دیگری آمده است. مثال زیر مقصود را روشن می کند:
http://www.mysite.com/harchiz?harchizmasalanprint
محدود کردن دسترسی به تمام آدرس هایی که به xls ختم می شوند:
Useragent: Googlebot
$Disallow: /*.xls
مقابلdisallow نمی توان نام روبوت را قرار داد.
*:Useragent
Disallow: Bingbot
کاربرد توضیحات به صورت زیر اشکالی ندارد اما توصیه می شود توضیحات را در خطوط جداگانه قرار دهید:
Disallow: /cgibin/#comments
شما اگر گالیور بودید و قصد سفر به سایت آدم کوچولوها را داشتید با دیدن دستورات زیر چه می کردید؟
*:Useragent
/:Disallow
Useragent: Gulliver
/:Allow
مطلب قبلی: پیج رنک (PAGE RANK)
مطلب بعدی: فایل ROBOTS.TXT را کجا باید قرارداد؟