robots.txt файл – синтаксис, директиви, примери

Помощен център

robots.txt файл – синтаксис, директиви, примери

Този файл показва на търсещите машини кои файлове в директорията на сайта може да индексират и кои ресурси не трябва да се индексират.

Файлът използва синтаксиса Robots Exclusion Standard за да покаже кои файлове са разрешени за индексиране и кои не.

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

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

Различните роботи интерпретират синтаксиса по различен начин

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

Директивите в robots.txt нямат забранително действие

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

robots.txt не е инструмент за сигурност

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

При никакви обстоятелства не се отнасяйте към robots.txt като към инструмент за сигурност на сайта по две причини:

  • Самият файл е свободно достъпен и всеки може да види какви ресурси не желаете да се индексират;
  • Както казахме, директивите във файла не са задължителни;

Защо всеки сайт трябва да има robots.txt файл?

На първо място, наличието на този файл няма никакви отрицателни последици за сайта.

Създаването на самия файл и съдържанието му е елементарно, както ще видите по-късно.

Правилно конфигуриран robots.txt може да ви помогне да не превишите някои ограничения на хостинг плана като ограничение на CPU и безплатен трафик (например в WordPress можете да забраните ненужното индексиране на административната директория wp-admin и основните файлове в wp-includes директория).

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

Файлът трябва да бъде поставен в основната папка на сайта. Ако искате да защитите файл в поддиректория, не е необходимо да създавате нов robots.txt, а да посочите пълния път към файла в главния robots.txt:

Disallow: /sub-directory/file.html

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

Правилен синтаксис на robots.txt файл

Името на файла robots.txt е чувствително към регистъра на шрифта (малки/главни букви) и единственият правилен синтаксис е robots.txt (всички други варианти като Robots.txt, robots.TXT, ROBOTS.TXT са грешни).

Всеки домейн/поддомейн използва свой собствен файл robots.txt:

blog.example.com/robots.txt example.com/robots.txt

robots.txt ви позволява да посочите пътя към картата на сайта на сайта:

Sitemap: http://www.example.com/directory/sitemap_index.xml

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

robots.txt е обикновен текстов файл. Можете да го създадете с обикновен текстов редактор на компютъра си и да го качите през FTP в основната папка на сайта.

В cPanel можете да създадете robots.txt във файловия мениджър, по следния начин:

Отворете файловия мениджър и отидете до основната папка на сайта.

Кликнете линка + File в горния ляв ъгъл:

robots text file

В малкия прозорец въведете името на файла robots.txt и кликнете бутона Create New File:

robots text file

Новият файл ще се появи в списъка с директории:

robots text file

Изберете файла и кликнете върху Edit в горното меню.

Въведете някакъв код - уверете се, че има правилен синтаксис и кликнете върху бутона Save Changes.

В браузъра въведете URL адреса на сайта example.com/robots.txt за да видите съдържанието на файла.

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

Всички роботи могат да индексират всички файлове, тъй като знакът на wildcard * означава всички и Disallow без стойност означава Не е забранено:

User-agent: *
Disallow:

Същият резултат може да се постигне с празен или липсващ файл robots.txt.

Всички роботи са изключени от целия уебсайт:

User-agent: *
Disallow: /

На всички роботи не е позволено да посещават тези директории:

User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /junk/

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

User-agent: *
Disallow: /directory/file.html

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

Само за посочения робот не е позволено да посещава уебсайта:

User-agent: BadBot
Disallow:/

На посочените роботи не е позволено да посещават тази директория:

User-agent: BadBot
User-agent: Googlebot
Disallow: /private/

Забележка: заменете BadBot с действителното име на бот.

Как да използвате коментари - след символа # в началото на линията или след директива:

User-agent: *  # match all bots
Disallow: /    # keep them out

Също така е възможно да се изброят няколко робота със собствени правила.

Пример с няколко потребителски агента:

User-agent: googlebot           # all Google services
Disallow: /private/             # забранява тази директория

User-agent: googlebot-news      # only the news service
Disallow: /                     # забранява всичко

User-agent: *                   # всеки робот
Disallow: /something/           # забрана на посочената директория

Нестандартни разширения на robots.txt файл

Директива за закъснения при обхождане - не е част от стандартния протокол и се интерпретира по различен начин от търсещите машини:

User-agent: *
Crawl-delay: 10

Директива Allow - директивата е полезна, когато някой казва на роботите да избягват цяла директория, но все пак иска някои HTML документи в тази директория да бъдат обходени и индексирани.

За да бъдем съвместими с всички роботи, ако искаме да позволим отделни файлове в друга директория, която не е разрешена, е необходимо първо да поставим директивата Allow, а след това - Disallow, например:

Allow: /directory1/myfile.html
Disallow: /directory1/

Sitemap директива

Някои роботи поддържат директивата за Sitemap, като дефинират няколко Sitemap в същия robots.txt в следния формат:

Sitemap: http://www.example.com/dir/sitemaps/profiles-sitemap.xml
Sitemap: http://www.example.com/dir/sitemap_index.xml

Host директива

Някои роботи поддържат Host директивата като позволяват на множество огледални сайтове да посочат предпочитания от тях домейн:

Host: example.com или Host: www.example.com

Забележка: Host директивата не се поддържа от всички роботи и ако се използва, трябва да се вмъкне в дъното на файла robots.txt след директивата за забавяне на обхождането.