Dziś będzie o kolejnym (po .htaccess) istotnym przydatnym pliku, który powinien (a na pewno nie zaszkodzi) znaleźć się w głównym katalogu naszej strony, na serwerze, czyli pliku robots.txt, który umożliwia pewnego rodzaju dialog między stroną (nami) a wyszukiwarką (robotami indeksującymi).

Plik robots.txt, czyli Robots Exclusion Protocol

Plik robots.txt jest częścią protokołu „Robots Exclusion Protocol”, i jest to rodzaj informacji – drogowskazu – dla „robotów internetowych/indeksujących”, by np. jakiegoś elementu naszej strony nie odwiedzały, tym samy też nie indeksowały (ale o tym więcej niżej).

Przy czym – w przeciwieństwie do wcześniej przywołanego pliku .htaccess nie jest elementem konfiguracji serwera, a tym samym nie ma „mocy sprawczej” – bardziej jest to „prośba”, którą „dobrze wychowane roboty internetowe/indeksujące” zazwyczaj spełniają…

Podstawowa konfiguracja robots.txt

Podstawowa konfiguracja (zawartość) pliku wygląda np. tak:

User-Agent: *
Allow: /

Ew. wersja alternatywna:

User-Agent: *
Disallow:

Oznacza to, że każdy robot (*) może odwiedzić całą stronę (Allow: /) lub – w przypadku wersji alternatywnej – nie może (nie powinien) odwiedzać wybranych adresów (Disallow:).

Strona w wersji deweloperskiej/rozwojowej

Choć uważam, że stronę w wersji deweloperskiej – czyli takiej, nad którą trwają prace – warto zablokować za pomocą pliku .htaccess, to czasem może zajść potrzeba zablokowania do niej dostępu tylko robotom indeksującym:

User-Agent: *
Disallow: /

Ew. gdy pracujemy nad jakimś działem, a reszta już jest OK:

User-agent: *
Disallow: /wersja_testowa01/
Disallow: /wersja_testowa02/
Disallow: /jakiś_katalog/strona_prywatna.html

Nie dla robota grafika

Możemy też zablokować indeksowanie konkretnych typów plików, np. grafiki:

User-agent: *
Disallow: /*.png$
Disallow: /*.jpg$
Disallow: /*.gif$

Robot robotowi nie równy

Do tej pory zwracaliśmy się „z prośbą” do wszystkich robotów (User-agent: *), ale możemy nasze „prośby” kierować indywidualnie do każdego robota.

Katalog poza Google, czyli „blokujemy” robota Google:

User-agent: GoogleBot
Disallow: /katalog/

I wariant łączony, czyli nasza grafika poza Google Grafika:

User-agent: googlebot-image
Disallow: /*.png$
Disallow: /*.jpg$
Disallow: /*.gif$

Mapa strony

W pliku robots.txt możemy również wskazać położenie tzw. „mapy strony”, która jest pewnego rodzaju mapą dla robotów indeksujących, dzięki której mogą sprawniej poruszać się po naszej stronie.

Standardowo jest to plik sitemap.xml znajdujący się w głównym katalogu serwera/strony/domeny, ale możemy skierować robota do innego pliku:

Sitemap: http://adres_nasze_strony.pl/alternatywna_mapa_strony.xml

Z czego zresztą często korzystają np. wtyczki od SEO.

Tag noindex

Na koniec warto napisać, że „blokada” w robots.txt to nie tylko prośba, ale też jest tylko informacją dla robota indeksującego, by danego adresu nie odwiedzać. Natomiast jeśli już na taką stronę trafi (np. z jakiegoś linku), to może ją zaindeksować.

By tego uniknąć, można zastosować tag „noindex” w sekcji <head> strony, który informuje roboty indeksujące odwiedzające daną stronę (adres), by go nie indeksowały:

<meta name="robots" content="noindex">

Co istotne, w takiej sytuacji – wykorzystanie tagu „noindex” – najlepiej nie blokować dostępu do danej (pod)strony za pomocą pliku robots.txt, tak by robot indeksujący mógł stronę odwiedzić i zapoznać się z regułą „noindex”.

(!) Zgłoś błąd na stronie
Pomogłem? To może postawisz mi wirtualną kawę?
LUTy dla D-Cinelike (DJI Mini 3 Pro, DJI Avata, OSMO Pocket) od MiniFly
Wdrożenie Omnibusa w sklepie na WooCommerce
Jak (legalnie) latać dronem w Kategorii Otwartej