robots.txt

robots.txt - definicja



Robots.txt to plik zawierający instrukcje dla różnego rodzaju robotów skanujących witryny internetowe, mówiący jak roboty powinny się na stronie zachowywać.

Jest to jeden ze sposobów, na zastosowanie Robots Exclusion Protocol (REP), czyli półoficjalnego (w trakcie standaryzacji) protokołu z pomocą którego wyłączamy na naszej witrynie dostępność określonych zasobów dla określonych robotów. Ważne: Nie jest to jednoznaczne z zakazem ich indeksowania, o czym przeczytasz w dalszej części.

Instrukcja czy wskazówka?

W przeciwieństwie np. do zapisów w pliku .htaccess, wszelkie informacje zawarte w pliku robots.txt są dla robotów wskazówkami, a nie wytycznymi.

Każda szanująca się firma lub instytucja powinna tworząc robota skanującego internet wziąć pod uwagę i respektować zapisy pliku robots.txt – nie da się jednak tego w żaden sposób wymusić, dlatego też plik robots.txt nie jest w stanie zablokować robotów spamerskich, phishingowych czy nielegalnych harvesterów.

Działa on jednak doskonale w przypadku robotów wyszukiwarek, takich jak Google, Bing i innych.

Jak powinien wyglądać robots.txt?

robots.txt służy przede wszystkim do informowania robotów, że nie chcemy by skanowały określone przez nas pliki. Ponieważ standard REP jest wciąż półoficjalny, niektóre roboty respektują dodatkowe komendy, poza Disallow i Allow.

Disallow

Podstawową komendą pliku robots.txt jest disallow, zabraniający robotowi dostępu do wybranego folderu lub pliku. Komendę należy poprzedzić wyborem robota, którego ma ona dotyczyć. Symbol „*” to wildcard, odnoszący się do wszystkich robotów:

User-agent: *
Disallow: /tmp/

Zabroniliśmy w ten sposób wszystkim robotom dostępu do folderu „tmp”.

User-agent: YandexAccessibilityBot
Disallow: /

W tym wypadku zablokowaliśmy dostęp do całej strony robotowi Yandex.

Allow

Allow to komenda zezwalająca na skanowanie określonego miejsca w witrynie.

Domyślnie umożliwiamy robotom skanowanie całej witryny, neutralny robots.txt wygląda więc tak:

User-agent: *
Allow: /

Taki zapis w robots.txt równoważny jest z brakiem pliku robots.txt, ponieważ domyślnie i tak zezwalamy robotom na skanowanie wszystkiego.

Komenda Allow przydaje się np. wtedy, gdy blokujemy określony folder, ale chcemy udostępnić robotom wybrane pliki które się w nim znajdują:

User-agent: *
Disallow: /docs/
Allow: /docs/plik.pdf

Z całego folderu „docs” roboty będą miały tu dostęp jedynie do pliku „plik.pdf”.

Crawl-delay

Niektóre roboty – przy czym od razu zaznaczam: NIE Googlebot – respektują zapis komendy crawl-delay. Możemy dzięki niej spowolnić wizyty niektórych robotów, jeśli zbytnio obciążają one nasz serwer. Brak jest dokładnej dokumentacji dla tej komendy, dlatego jej respektowanie i interpretowanie jest bardzo zróżnicowane; najczęściej jest to po prostu wyrażenie liczby sekund, jakie robot ma odczekać pomiędzy kolejnymi wizytami na stronie:

User-agent: *
Crawl-delay: 10

Sitemap

Niektóre roboty potrafią odczytać z pliku robots.txt adres naszej mapy strony – jednej lub wielu jednocześnie. Podajemy tu pełny adres URL mapy:

Sitemap: http://www.example.com/sitemap.xml

Host

Pewne crawlery potrafią z pliku robots.txt odczytać preferowaną domenę w przypadku serwisów mających wiele mirrorów na różnych serwerach. Jest to raczej rzadko używana komenda z przeszłości, którą opisuję tylko dla formalności:

Host: main.domena.pl

Komentarze

Plik robots.txt dopuszcza również umieszczanie w nim komentarzy, poprzedzonych hasztagiem:

User-agent: AhrefsBot  # blokujemy robot Ahrefsa
Disallow: /   # w calym serwisie

Przykłady

User-agent: googlebot  # robot Google
Disallow: /tajne/  # nie pokazujemy mu tego folderu

User-agent: bingbot  # robot Bing
Disallow: /   # ma calkowity zakaz

User-agent: *   # wszystkie roboty
Disallow: /temp/  # wara od folderu temp

Jak stworzyć i gdzie powinien znaleźć się plik robots.txt?

To nie jest żadna filozofia – jest to zwyczajny plik tekstowy, jaki możemy stworzyć w notatniku. Po nadaniu mu nazwy robots.txt  umieszczamy go w katalogu głównym naszej strony.

Plik nie może znajdować się w folderze – musi być dostępny po dopisaniu „/robots.txt” do nazwy domeny np.:

domena.pl/robots.txt

Jeśli pracujemy na subdomenie, to podobnie:

subdomena.domena.pl/robots.txt

Nie możesz umieścić pliku robots.txt w subfolderze:

domena.pl/folder/robots.txt
subdomena.domena.pl/terefere/robots.txt

Robots.txt a WordPress

Edycja robots.txt to czynność wykonywana raz na wiele miesięcy (o ile nie raz na zawsze) i nie ma sensu specjalnie do tego celu instalować i utrzymywać wtyczki.

Lepszym rozwiązaniem jest ręczne wyedytowanie istniejącego domyślnego pliku robots.txt, dostępnego pod adresem domena.pl/robots.txt

O dziwo, mimo, że po przejściu pod ten adres plik nam się wyświetla, próżno szukać go na naszym serwerze. Dzieje się tak dlatego, że WordPress tworzy wirtualny plik robots.txt, który fizycznie nie istnieje na serwerze.

Aby go nadpisać, wystarczy stworzyć własny plik i umieścić go w głównym katalogu – wirtualny plik przestanie się wyświetlać.

Robots.txt, X-robots-tag czy meta robots?

Bardzo dużo zamieszania powoduje częste mylenie dwóch różnych metod komunikacji z robotami: robots.txt i meta robots (X-robots-tag działa właściwie tak jak meta robots, więc nie będę tu oddzielnie go omawiał).

Powód nieporozumienia, to niewłaściwie rozumienie celu w jakim dane rozwiązanie się stosuje.

Robots.txt:

  • dajemy znać robotom, że nie powinny pobierać zawartości strony
  • nie mówimy nic o sposobie indeksacji naszej strony

Robots meta tag:

  • instruujemy co robot ma zrobić, kiedy już pobierze zawartość strony
  • instruujemy co do sposobu indeksacji i dalszego skanowania witryny

Jeśli więc w indeksie Google znajduje się strona, której tam nie chcemy, nie powinniśmy używać do wyindeksowania pliku robots.txt.

Do wyindeksowania danego URL służy parametr noindex w meta tagu robots. Aby go odczytać, robot musi pobrać zawartość witryny. Nie może tego zrobić, jeśli zablokujemy mu dostęp w robots.txt.

Krótko mówiąc: robots.txt jeśli nie chcemy by robot nas w ogóle odwiedzał, robots meta tag jeśli chcemy odwiedzin, ale np. nie chcemy indeksacji.

Strona zablokowana w robots.txt może pojawić się w indeksie Google np. dlatego że trafiła tam już przed zablokowaniem, albo np. inna witryna do niej linkuje.

Czy plik robots.txt trzeba gdzieś zgłaszać?

W przeciwieństwie do np. mapy witryny, którą warto zgłosić, plik robots.txt jest pobierany automatycznie. Dzieje się tak dlatego, że istnieje tylko jedno miejsce, w którym plik może być obecny; poza tym jego nazwa pozostaje niezmienna (w przeciwieństwie do mapy witryny, którą możemy dowolnie nazwać i umieścić w dowolnym miejscu na serwerze). Pliku robots.txt mnie trzeba więc nigdzie zgłaszać; podczas pierwszej wizyty roboty respektujące zapisy REP podejmą próbę jego pobrania automatycznie.

Czy brak pliku robots.txt to błąd?

Nie. Brak pliku robots.txt jest równoważny z plikiem zezwalającym na crawlowanie wszystkiego (Allow: /). Warto jednak rozważyć jego dodanie, i zablokować crawlowanie zbędnych elementów, pozwalając np, robotowi Google na spędzenie więcej czasu na treściach, które faktycznie są dla nas istotne.

Nawet jeśli nie posiadamy pliku robots.txt, większość robotów przy pierwszej wizycie podejmie próbę jego pobrania.

Skąd czerpać nazwy botów?

Blokowanie istotnych treści dla nieistotnych robotów to często wylewanie dziecka z kąpielą. Warto zablokować nieistotne strony i pliki dla wszystkich botów, ale jeśli upierasz się, by tę listę wyselekcjonować, tutaj znajdziesz listę 220 aktywnych pająków przeczesujących sieć i zżerających zasoby Twojego serwera.

Wyceń pozycjonowanie swojej strony

  • 0 of 500 max characters
    • Wyrażam zgodę na przetwarzanie moich danych osobowych przez Audytorium Piotr Samojło z siedzibą w Białymstoku ul Rzędziana 1E, 15-698 Białystok (dalej: Audytorium) zawartych w niniejszym formularzu kontaktowym w celu realizacji przesłanego zgłoszenia. Zostałem poinformowany/poinformowana o możliwości wycofania zgody w dowolnym czasie, poprzez przesłanie wiadomości e-mail na adres biuro@audytorium.xyz.

Piotr Samojło

Freelancer działający pod marką Audytorium SEO. Jeśli masz pytania, lub szukasz człowieka od SEO i optymalizacji stron, zapraszam do kontaktu.

FAQ


Czym jest robots.txt?

Robots.txt to plik zawierający instrukcje dla różnego rodzaju robotów skanujących witryny internetowe, mówiący jak roboty powinny się na stronie zachowywać.

Jakie są podstawowe komendy robots.txt

Podstawowe zapisy robots.txt to Disallow, Allow, Crawl-delay, Sitemap oraz Host. Nie wszystkie jednak respektowane są przez większość robotów.

Jakim programem stworzyć plik robots.txt?

Plik robots.txt jest zwykłym plikiem tekstowym i może być stworzony w najprostszym edytorze tekstu.

Gdzie umieścić plik robots.txt?

Plik robots.txt musi być umieszczony w katalogu głównym domeny, musi być więc dostępny bezpośrednio po dopisaniu jego nazwy do nazwy domeny: "domena.pl/robots.txt". Nie może znaleźć się w subfolderze.

Czy robots.txt służy do wyindeksowywania stron z Google?

Nie. Do wyindeksowania strony z Google służy np. meta tag robots i parametr "noindex". Robots.txt służy do zabraniania robotom ruchu w określonych miejscach na stronie, a nie do wyindeksowywania już zaindeksowanych adresów.

Czy plik robots.txt trzeba gdzieś zgłaszać?

Nie. Podczas pierwszej wizyty roboty respektujące zapisy REP podejmą próbę jego pobrania automatycznie.

Zostaw komentarz

Twój adres e-mail nie zostanie upuibliczniony Pola wymagabe*

Słowa łączące

Słowa łączące (transition words) to wymysł twórców wtyczki do Wordpressa: Yoast SEO. Choć deweloperzy umieścili…

2 tygodnie temu

JSON-LD

JSON-LD to metoda zapisu danych strukturalnych za pomocą formatu JSON (JSON to podzbiór języka JavaScript).

3 tygodnie temu

Sitemap

Mapa witryny, zawierająca wszystkie odnośniki do podstron naszego serwisu, tworzona w celu pomocy robotom wyszukiwarek…

3 tygodnie temu

Voice search

Voice search to sposób użycia wyszukiwarki internetowej (np. Google), w którym wyszukiwana fraza jest przez…

3 tygodnie temu

Hreflang

Hreflang to tag służący wskazywaniu i rozróżnianiu poszczególnych wersji językowych naszej witryny.

3 tygodnie temu

Bounce rate

Bounce rate (współczynnik odrzuceń) to termin używany w analityce ruchu internetowego dla określenia procenta użytkowników,…

3 tygodnie temu

Canonical

Tag canonical, rel="canonical", link kanoniczny - sposób wskazania (np. robotowi Google), która wersja strony jest…

3 tygodnie temu

Dane strukturalne

Dane strukturalne to taki sposób prezentowanie treści na stronie, który uporządkowuje zawartą na niej treść…

3 tygodnie temu

Long tail

Long tail czyli tzw. "długi ogon" - jest to rodzaj słowa kluczowego, które jest bardziej…

4 tygodnie temu

Ta strona używa cookies.

Polityka prywatności