Създаване на Robots.txt

Robots.txt е един от най-малките файлове на уебсайта, но може да направи най-големите бъркотии.  Файлът robots.txt казва на ботовете на търсачките как да обхождат даден сайт. Най-често той изброява местата в сайта, които са забранени за търсачките. Повечето търсачки са послушни, но Google не е от тези търсачки. Когато ботовете посетят даден сайт първата им работа е да погледнат на две места, в Robots файла и в sitemap.xml, които им казват какво да индексират и какво не. Ботовете на Google не обичат да губят ценно процесорно време, макар че често влизат и на места, в които не са канени, като например в админ зоната на сайта.

Ако никога досега не сте виждали някой от тези файлове, трябва да знаете, че синтаксисът им е доста опростен. Накратко, вие присвоявате правила на ботове, като посочвате техния потребителски агент (User-agent),  последван от директиви (заповеди) . Примера от картинката по-горе казва: „Важи за всички ботове, забранявам да влизате в папка wp-admin, от нея разрешавам да посетите само файла admin-ajax.php. Освен това за да не губите време има карта на сайта, която може да посетите на адрес postvai.com/sitemap.xml„.

Потребителски агенти или за кои ботове важат правилата?

Всяка търсачка се идентифицира с различен потребителски агент (ботове, търсачки). Можете да зададете персонализирани инструкции за всеки от тях във вашия файл robots.txt. Има стотици потребителски агенти , но ето няколко полезни за SEO :

  • Google: Googlebot
  • Google Images:  Googlebot-Image
  • Bing: Bingbot
  • Yahoo: Slurp
  • Baidu : Baiduspider
  • DuckDuckGo:  DuckDuckBot

Можете също така да използвате звездата (*), за да зададете директиви на всички потребителски агенти. Например, да кажем, че сте искали да блокирате всички ботове, с изключение на Googlebot, да обхождат вашия сайт. Ето какво трябва да напишете в Robots.txt:

User-agent: * 
Disallow: / 
User-agent: Googlebot 
Allow: / 

На кратко горният пример, казва: „За всички ботове, забранявам всичко, а на Googlebot, разрешавам всичко„. Знайте, че файлът ви robots.txt може да включва директиви за толкова потребителски агенти, колкото искате. С други думи, ако добавите директиви за множество потребителски агенти, декларираните директиви за първия потребителски агент не се отнасят за втория, третия или четвъртия и т.н.

Изключението от това правило е, когато декларирате един и същ потребителски агент повече от веднъж. В този случай всички съответни директиви се комбинират и следват. Роботите изпълняват само правилата, декларирани под потребителския (ите) агент (и), който най-точно се отнася за тях . Ето защо файлът robots.txt по-горе блокира всички ботове, с изключение на Googlebot (и други ботове на Google), да не обхождат сайта. Googlebot игнорира по-малко специфичната декларация за потребителски агент.

Директиви или какво да прави бота като влезне?

Директивите са правила, които искате декларираните потребителски агенти да следват. Ето директиви, които Google поддържа в момента, заедно с техните приложения.

Забрани

Използвайте тази директива, за да инструктирате търсачките да нямат достъп до файлове и страници, които попадат под определен път. Например, ако искате да блокирате достъпа на всички търсачки до вашия блог и всичките му публикации, файлът ви robots.txt може да изглежда така:

User-agent: *
Disallow: / blog

Ако не успеете да определите път след директивата за забрана, търсачките ще го игнорират.

Позволения

Използвайте тази директива, за да позволите на търсачките да обхождат поддиректория или страница – дори в иначе забранена директория. Например, ако искате да попречите на търсачките да имат достъп до всяка публикация в блога ви с изключение на една, вашият файл robots.txt може да изглежда така:

User-agent: *
Disallow: / блог
Allow: / блог / разрешено публикуване

В този пример търсещите машини могат да имат достъп /blog/allowed-post. Но те не могат да получат достъп:

/blog/another-post
/blog/yet-another-post
/blog/download-me.pdf

И Google, и Bing поддържат тази директива. Както при директивата за забрана, ако не успеете да определите път след директивата за разрешаване, търсачките ще я игнорират. Ако не сте внимателни, може да влезнете в собствено противоречие, което ще ви навреди на сайта. В примера по-долу ние забраняваме достъпа до /blog/ и допускаме достъп до него /blog.

User-agent: *
Disallow: / блог /
Allow: / блог

В този случай  изглежда , че URL адресът /blog/post-title/ е едновременно забранен и разрешен. И така, кой печели?

За Google и Bing правилото е, че директивата с най-много знаци печели. Ето, в случая това е директивата за забрана.

Disallow: /blog/ (6 знака) (5 символа
Allow: /blog )

Ако директивите за разрешаване и забрана са равни по дължина, тогава печели най-малко рестриктивната директива. В този случай това ще бъде директивата за разрешаване.  Важното е, че това важи само за Google и Bing . Други търсачки слушат първата директива за съвпадение. В този случай това е невъзможно.

Добавяне на Sitemap към Robots файла, като директива

Използвайте тази директива, за да укажете местоположението на вашата sitemap карта, това е много добра практика с отличен ефект. Ако не сте запознати със Sitemaps, те обикновено включват страниците, които искате търсачките да обхождат и индексират. Ето пример за файл robots.txt, използващ директивата за Sitemap:

Sitemap: https://www.yourdomain.com/sitemap.xml
# Ако имате няколко sitemaps просто ги добавете на няколко реда
User-agent: *
Disallow: / блог /

Колко важно е включването на вашата Sitemap (и) във вашия файл robots.txt? Ако вече сте изпратили картата през Search Console, това е малко излишно за Google. Въпреки това, той казва на други търсачки като Bing къде да намерите вашата карта на сайта, така че все още е добра практика.

Имайте предвид, че не е необходимо да повтаряте директивата за Sitemap няколко пъти за всеки потребителски агент. Не се отнася само за един. Затова е най-добре да включите директивите за Sitemap в началото или в края на файла си robots.txt. Например:

Sitemap: https://www.domain.com/sitemap.xml 
User-agent: Googlebot 
Disallow: / блог / 
Allow: / блог / след заглавие / 
User-agent: Bingbot 
Disallow: / услуги / 

Неподдържани директиви

 Има и редица неподдържани директиви от Google, които обаче се поддържат от Bing, Yandex и други търсачки. 

Noindex

Тази директива никога не е била официално подкрепена от Google. Въпреки това, доскоро се смяташе, че Google има някакъв „код, който обработва неподдържани и непубликувани правила (като noindex).“ Така че, ако искате да попречите на Google да индексира всички публикации в блога си, можете да използвате следната директива:

User-agent: Googlebot
Noindex: / блог /

На 1 септември 2019 г. обаче Google даде да се разбере, че тази директива не се поддържа . Ако искате да изключите страница или файл от търсачките, вместо това използвайте етикета за мета роботи или HTTP заглавката на x-robots .

Nofollow

Това е друга директива, която Google никога не поддържа официално и е използвана за инструктиране на търсачките да не следват връзки на страници и файлове по определен път. Например, ако искате да спрете Google да следва всички връзки на вашия блог, можете да използвате следната директива:

User-agent: Googlebot
Nofollow: / блог /

Google обяви, че тази директива е официално неподдържана на 1 септември 2019 г. Ако искате да нямате следните връзки на дадена страница сега, трябва да използвате мета маркера или заглавката на x-robots. Ако искате да кажете на Google да не следва конкретни връзки на дадена страница, използвайте атрибута на връзката rel = „nofollow“. 

Имате ли нужда от файл robots.txt?

Наличието на файл robots.txt ви дава контрол върху това какво търсачките могат и какво не да правят на вашия сайт и то може да ви помогне за следното:

  • Предотвратяване на обхождането на дублирано съдържание, което е лош сигнал за Google;
  • Запазване на частни секции на уебсайт (напр. админ зоната wp-admin);
  • Предотвратяване обхождането на вътрешни страници с резултати от търсенето;
  • Предотвратяване на претоварване на сървъра;
  • Предотвратяване на Google да губи т.н. „ Crawl бюджет “.
  • Предотвратяване на показването на някои файлове, изображения, видеоклипове или други ресурси в резултатите от търсенето с Google.

Обърнете внимание, че докато Google обикновено не индексира уеб страници, които са блокирани в robots.txt, няма начин да гарантирате изключване от резултатите от търсенето с помощта на файла robots.txt .

Както казва Google, ако съдържанието е свързано с други места в мрежата, то може все още да се показва в резултатите от търсенето с Google.

Къде да намерите вашия файл robots.txt?

Ако вече имате файл robots.txt на уебсайта си, той ще бъде достъпен на домейн.com/ robots.txt . Във WordPress по подразбиране със създаването на сайта се инсталира такъв файл с включена забрана за обхождане на wp-admin. За да проверите вашият файл в URL адреса напишете ime-na-sait/robots.txt

Как да създадете файл robots.txt

Ако все още нямате файл robots.txt, създаването на такъв е лесно. Просто отворете празен .txt документ и започнете да въвеждате директиви. Например, ако искате да забраните на всички търсачки да обхождат /admin/директорията ви , във WordPress ще изглежда така:

User-agent:*
Disallow: /wp-admin /

Продължете да изграждате директивите, докато не сте доволни от това, което имате. Запазете файла си като „robots.txt.“ Освен това можете да използвате генератор robots.txt като този .

Предимството на използването на инструмент като този е, че свежда до минимум синтаксичните грешки. Това е добре, защото една грешка може да доведе до SEO катастрофа за вашия сайт – така че си струва да се объркате от страна на предпазливостта.  Недостатъкът е, че те са до известна степен ограничени от гледна точка на персонализация.

Къде да поставите файла си robots.txt?

Поставете файла robots.txt в основната директория на поддомена, към който се прилага. Например, за да контролирате поведението на обхождането на domain.com , файлът robots.txt трябва да бъде достъпен на домейн.com/ robots.txt . Ако искате да контролирате обхождането на поддомейн като  blog.domain.com , тогава файлът robots.txt трябва да бъде достъпен на blog.domain.com/robots.txt .

Robots.txt файл най-добрите практики

Използвайте нов ред за всяка директива.  В противен случай това ще обърка търсачките.

Можете да използвате заместващи символи (*) за да опростите инструкциите към всички потребителски агенти, но и за да съответствате на моделите на URL адреси, когато декларирате директиви. Например, ако искате да попречите на търсачките да имат достъп до параметризирани URL адреси на категории продукти на вашия сайт, можете да ги изброите така:

User-agent: * 
Disallow: / продукти / тениски?
Отказ: / продукти / качулки?
Disallow: / продукти / якета?
...

Но това не е много ефективно. Би било по-добре да опростите нещата с подметка като тази:

User-agent: * 
Disallow: / продукти / *?

Този пример блокира търсещите машини да обхождат всички URL адреси под / продукт / подпапка, които съдържат въпросителна. С други думи, всички параметризирани URL адреси на категория продукти.

Включете символа „$“, за да маркирате края на URL адреса . Например, ако искате да попречите на търсачките да имат достъп до всички .pdf файлове на вашия сайт, файлът ви robots.txt може да изглежда така:

User-agent: * 
Disallow: /*.pdf$

В този пример търсачките не могат да получат достъп до URL адреси, завършващи с .pdf. Това означава, че не могат да имат достъп /file.pdf, но могат да имат достъп /file.pdf?id=68937586, защото това не завършва с „.pdf“.

Използвайте всеки потребителски агент само веднъж. Ако посочите един и същ потребителски агент няколко пъти, Google няма нищо против. Той просто ще комбинира всички правила от различните декларации в едно и ще ги следва всички. Например, ако имате следните потребителски агенти и директиви във вашия файл robots.txt …

User-agent: Googlebot
Disallow: / a /

Потребителски агент: Googlebot 
Disallow: / b /

… Googlebot няма да  обходи нито една от тези папки.

Това каза, че има смисъл да се декларира всеки потребителски агент само веднъж, защото е по-малко объркващо. С други думи, има по-малка вероятност да направите критични грешки, като поддържате нещата чисти и прости.

Използвайте коментари, за да обясните файла си robots.txt на хората. Коментарите помагат да се обясни вашия файл robots.txt на разработчиците – а евентуално дори и на бъдещото ви аз. За да включите коментар, започнете реда с хеш (#).

# Това инструктира Bing да не обхожда нашия сайт. 
User-agent: 
Bingbot Disallow: / 

Използвайте отделен файл robots.txt за всеки поддомейн. Например, ако основният ви сайт седи на domain.com,  а блогът ви се намира на blog.domain.com , тогава ще ви трябват два файла robots.txt. Единият трябва да влезе в основната директория на основния домейн, а другият в основната директория на блога.

Примерни файлове robots.txt

По-долу са дадени няколко примера на файлове robots.txt. Те са основно за вдъхновение, но ако се случи да отговаря на вашите изисквания, копирайте го и го поставете в текстов документ, запишете го като „robots.txt“ и го качете в съответната директория.

Дава пълен достъп за всички ботове

User-agent: *  
Disallow:  

Няма достъп за всички ботове

 User-agent: * 
Disallow: / 

Блокирайте една поддиректория за всички ботове

 User-agent: * 
Disallow: /folder/ 

Блокиране на еднa поддиректория за всички ботове (с един файл в рамките на разрешеното)

 User-agent: * 
Disallow: /folder/ 
Allow: /folder/page.html 

Блокирайте един файл за всички ботове

User-agent: * 
Disallow: /this-is-a-file.pdf 

Блокирайте един файл ( PDF ) за всички ботове

 User-agent: * 
Disallow: /*.pdf$ 

Блокирайте всички параметризирани URL адреси само за Googlebot

 User-agent: Googlebot 
Disallow: /*? 

Как да проверите вашия файл robots.txt за грешки?

Да може да се случат и грешки, за целта редовно трябва да проверявате за проблеми, свързани с robots.txt, в отчета „Покритие“ в Search Console . По-долу са някои от грешките, които може да видите, какво означават и как бихте могли да ги поправите. Поставяне на URL в Google, URL инспекция инструмент в Search Console. Ако е блокиран от robots.txt, трябва да видите нещо подобно:

блокиран от роботи txt 7

Изпратеният URL адрес е блокиран от robots.txt

изпратен URL адрес, блокиран от роботи 3

Това означава, че поне един от URL адресите във вашата изпратена карта на сайтове е блокиран от robots.txt.

Можете да използвате теста на robots.txt на Google, за  да видите коя директива блокира съдържанието. Просто внимавайте, когато правите това. Лесно е да се правят грешки, които засягат други страници и файлове.

роботи txt тестер 3

Блокиран от robots.txt

блокиран от роботи txt 6

Това означава, че имате блокирано от robots.txt съдържание, което понастоящем не е индексирано в Google. Ако това съдържание е важно и трябва да бъде индексирано, премахнете блока за обхождане в robots.txt. (Също така си струва да се уверите, че съдържанието не е без добавки). Ако сте блокирали съдържание в robots.txt с намерението да го изключите от индекса на Google, премахнете блока за обхождане и вместо това използвайте мета маркер на robots или x-robots-header. Това е единственият начин да се гарантира изключването на съдържание от индекса на Google . Премахването на блока за обхождане при опит за изключване на страница от резултатите от търсенето е от решаващо значение. Ако не го направите, и Google няма да види noindex маркера или HTTP заглавката – така че ще остане индексиран.

Индексиран, маркар и да е забранен от robots.txt

индексиран, макар и блокиран 3

Това означава, че част от блокираното от robots.txt съдържание е индексирано в Google, въпреки това. При това положение, изключването на това съдържание от резултатите от търсенето с Google, чрез модификация на самия файл robots.txt не е правилно решение. Извадете блока за обхождане и вместо това използвайте мета robots tag или x-robots-tag HTTP заглавка, за  да предотвратите индексирането.

Ако сте блокирали това съдържание случайно и искате да го запазите в индекса на Google, премахнете блока за обхождане в robots.txt. Това може да помогне за подобряване на видимостта на съдържанието в Google Търсене.

Какъв е максималният размер на файл robots.txt?

до 500 КБ (приблизително).

Къде е robots.txt в WordPress?

Същото място: domain.com/robots.txt 

Заключение

Robots.txt е прост, но мощен файл. Използвайте го разумно и това може да окаже положително влияние върху SEO .

Leave a Comment