Страхотно е, когато търсачките често посещават вашия сайт и индексират съдържанието му, но често има случаи, когато индексираните части от онлайн съдържанието ви не са това, което искате. Например, ако имате два варианта на една страница (един за гледане в браузъра и един за печат), по-скоро ще искате печатната версия да бъде изключена от обхождането на роботите и паяците, тъй като рискувате да ви бъде наложено наказание за дублирано съдържание. Също така, ако имате лични данни на сайта си, които не желаете светът да види, също ще предпочетете търсачките да НЕ индексират тези страници (въпреки че в този случай единственият сигурен начин да не бъдат индексирани лични данни е да се държат офлайн на отделна машина). Освен това, ако искате да спестите малко трафик чрез изключване на изображения, стилове и JavaScript от индексирането, вие също се нуждаете от начин, който да каже на паяците да не индексират (да се пазят от)тези елементи.
Един от начините да кажете на търсачките ,кои файлове и папки на вашият уеб сайт да избегнат, е чрез използването на метатаг роботи. Но тъй като не всички търсачки четат метатагове, метатаг Роботите могат просто да останат незабелязани. По-добър начин да информирате търсачките за вашето желание е да използвате файла robots.txt.
Какво е Robots.txt?
Robots.txt е текст (не HTML) файл ,който се поставя на сайта ви, за да кажете на роботи , кои страници не бихте желали да посетят. В никакъв случай търсачките не са длъжни да изпълнят написаното в Robots.txt , но като цяло те се подчиняват на това, което са помолени да не правят. Важно е да се изясни, че robots.txt не е начин за предотвратяване на обхождане на сайта ви от търсачките (т.е. не е защитна стена, или един вид защита с парола) и факта, че сте поставили файла robots.txt ,е нещо като поставянето на бележка „Моля, не влизайте“ на отключена врата. Ето затова ние казваме, че ако имате наистина чувствителни (лични) данни , е твърде наивно да разчитате на robots.txt, за да ги предпазите от индексиране и показването им в резултатите от търсене.
Местоположението на robots.txt е много важно. То трябва да бъде в главната директория, защото в противен случай потребителските агенти (търсачките) няма да могат да го намерят – те не претърсват целият сайт за файл с име robots.txt. Вместо това, първо проверяват в основната директория (т.е. http://mydomain.com/robots.txt) и ако не намерят нищо там, те просто предполагат, че този сайт не разполага с файл robots.txt и следователно индексират всичко, което срещнат по пътя им. Така че, ако не поставите robots.txt на мястото му, не се учудвайте, че търсачките индексират целият ви сайт.
Концепцията и структурата на robots.txt е разработена преди повече от десетилетие и ако се интересувате да научите повече за него, посетете http://www.robotstxt.org/ или можете да отидете направо на Стандарта за изключване на роботи (Standard for Robot Exclusion), защото в тази статия ще се занимаваме само с най-важните аспекти на файла robots.txt.
Структура на файла robots.txt
Структурата на robots.txt е доста проста (и едва гъвкава) – това е един безкраен списък от потребителски агенти и забранени файлове и директории. По принцип,синтаксът е следният:
User-agent(Потребителски агент):
Disallow(Забрани):
„User-agent“ са роботите на търсачките , а „Disallow“: списък с файлове и директории ,които да бъдат изключени от индексиране. В допълнение към „User-agent:“ и „Disallow:“ можете да включите коментар – просто поставяте знака # в началото на линията:
# Всички потребителски агенти са забранени да видят директорията / темп.
User-agent: *
Disallow: /temp/
Капаните на файла robots.txt
Когато започнете да правите сложни файлове – т.е. решите да позволите на различни потребителски агенти достъп до различни директории – проблемите могат да започнат, ако не обърне специално внимание на капаните на файла robots.txt. Общи грешки включват Typos (печатни грешки) и contradicting directives(противоречиви напътствия). Typos са сгрешени потребителски агенти, директории, липсващи запетаи след User-agent и Disallow и др. Typos могат да бъдат трудни за намиране, но някои случаи утвърждаващите инструменти помагат.
По-сериозен проблем е с логическите грешки. Например:
User-agent: *
Disallow: /temp/
User-agent: Googlebot
Disallow: /images/
Disallow: /temp/
Disallow: /cgi-bin/
Горният пример е от robots.txt, който позволява на всички търсачки да получат достъп до всичко на сайта, освен директорията /temp . До тук е добре, но по-късно има друг рекорд, който определя по-ограничителни условия за Googlebot. Когато Googlebot започне да чете robots.txt ще види, че всички потребителски агенти (включително Googlebot) се допускат до всички папки освен / temp /. Това е достатъчно за Googlebot и той няма да прочете файла temp и ще индексира всичко, освен / temp / – включително /снимки/ и /cgi-bin/, за които казахте да не се докосват. Виждате,че структурата на файла robots.txt е проста, но сериозни грешки могат да се направят лесно.
Средства за генериране и валидиране на файла robots.txt
Имайки впредвид простият синтаксис на файла robots.txt, винаги може да го прочетете, за да видите дали всичко е наред, но е много по-лесно да използвате валидатор, като този: http://tool.motoricerca.info/robots- checker.phtml. Тези инструменти докладват за често срещани грешки, като липсващи черти или колони, които ако не откриете ще компроментират вашите усилия. Например, ако сте написали:
User agent: *
Disallow: /temp/
това е грешно, защото няма наклонена черта между „потребител“ и „агент“ и синтаксисът е неправилен.
В тези случаи, когато имате комплексен robots.txt файл – т.е. давате различни инструкции на различните потребителски агенти или имате дълъг списък от директории и поддиректории, които искате да бъдат изключени, написването на файла ръчно може да бъде истинска болка. Но не се притеснявайте – има инструменти, които ще генерират файла за вас. Нещо повече, има визуални инструменти, които позволяват да се избере, кои файлове и папки искате да бъдат изключени.