Plik robots.txt: co to jest i do czego służy w SEO

Plik robots.txt - ilustracja koncepcji

Najważniejsze informacje

Plik robots.txt to kluczowy element technicznego SEO, który pozwala zarządzać dostępem robotów wyszukiwarek do Twojej witryny. Oto najważniejsze informacje, które musisz znać:

  • Definicja – to prosty plik tekstowy w głównym katalogu strony, który instruuje roboty, które adresy URL mogą odwiedzać.
  • Główne dyrektywy – najważniejsze polecenia to User-agent (dla jakiego bota), Disallow (czego nie odwiedzać), Allow (wyjątki od blokady) i Sitemap (wskazanie mapy witryny).
  • Cel w SEO – jego głównym zadaniem jest optymalizacja budżetu indeksowania (crawl budget) przez blokowanie dostępu do nieistotnych zasobów, takich jak panele logowania, koszyki czy strony z wynikami wyszukiwania.
  • Ograniczenia – plik robots.txt nie jest mechanizmem bezpieczeństwa i nie zapobiega indeksowaniu strony, jeśli prowadzą do niej linki zewnętrzne. Do blokowania indeksowania służy meta tag noindex.
  • Nowe zastosowania – coraz częściej używa się go do blokowania botów AI, takich jak GPTBot (OpenAI) czy Google-Extended, aby chronić treści przed wykorzystaniem do trenowania modeli językowych.
  • Lokalizacja i format – plik musi nazywać się robots.txt, znajdować się w głównym katalogu domeny (np. twojadomena.pl/robots.txt) i być zakodowany w formacie UTF-8.

Co to jest plik robots.txt i do czego służy w SEO?

Plik robots.txt to plik tekstowy umieszczony w głównym katalogu witryny, który instruuje roboty wyszukiwarek, takie jak Googlebot, które części strony mogą, a których nie powinny odwiedzać. Jest to pierwsza linia komunikacji z crawlerami i fundamentalny element technicznego SEO, pozwalający na zarządzanie procesem indeksowania i optymalizację budżetu na indeksowanie (crawl budget). Plik ten jest częścią Protokołu Wykluczania Robotów (Robots Exclusion Protocol, REP), który powstał w 1994 roku i został formalnie ustandaryzowany jako RFC 9309 w 2022 roku.

Głównym celem stosowania pliku robots.txt w SEO jest zapobieganie skanowaniu przez roboty nieistotnych lub zduplikowanych sekcji witryny. Do takich zasobów należą strony logowania, wyniki wewnętrznej wyszukiwarki, koszyki zakupowe czy strony sortowania i filtrowania w sklepach e-commerce. Dzięki zablokowaniu dostępu do tych adresów, oszczędzasz budżet indeksowania, czyli ograniczony czas i zasoby, jakie roboty wyszukiwarek przeznaczają na skanowanie Twojej witryny. To pozwala im skupić się na najważniejszych, wartościowych podstronach, które chcesz pokazać w wynikach wyszukiwania.

Ważne: Plik robots.txt nie jest mechanizmem bezpieczeństwa. Blokuje on jedynie dostęp współpracującym robotom, ale złośliwe boty mogą go zignorować. Co więcej, robots.txt nie zapobiega indeksowaniu strony. Jeśli zablokowany adres URL posiada linki przychodzące z innych witryn, Google może go zaindeksować bez odwiedzania jego treści. Do pewnego blokowania indeksowania służy meta tag robots z wartością noindex.

Jakie są dyrektywy w pliku robots.txt?

Najważniejsze dyrektywy w pliku robots.txt to User-agent, Disallow, Allow oraz Sitemap, które razem tworzą zestaw reguł dla robotów sieciowych. Każda reguła zaczyna się od zdefiniowania User-agent, po którym następują dyrektywy Disallow i Allow określające zasady dostępu dla tego konkretnego bota.

Podstawowe i zaawansowane dyrektywy

Chociaż większość plików robots.txt opiera się na kilku podstawowych poleceniach, standard i praktyka dopuszczają również inne, rzadziej stosowane dyrektywy. Znajomość ich wszystkich pozwala na precyzyjniejsze zarządzanie ruchem botów.

Oto lista najważniejszych dyrektyw wraz z ich zastosowaniem:

  • User-agent – określa, do którego robota (crawlera) odnoszą się poniższe reguły. Gwiazdka (*) oznacza regułę dla wszystkich botów. Można też wskazać konkretne boty, np. Googlebot, Bingbot czy GPTBot.
  • Disallow – wskazuje ścieżki (katalogi lub konkretne strony), których dany bot nie powinien odwiedzać. Pusta wartość (Disallow:) oznacza, że nic nie jest blokowane.
  • Allow – pozwala na dostęp do określonego podkatalogu lub strony, nawet jeśli nadrzędny katalog jest zablokowany dyrektywą Disallow. Jest to przydatne do tworzenia wyjątków.
  • Crawl-delay – nieoficjalna dyrektywa, która prosi robota o odczekanie określonej liczby sekund między kolejnymi żądaniami. Jest wspierana przez niektóre wyszukiwarki, jak Bing czy Yandex, ale ignorowana przez Googlebota. Wartość jest podawana w sekundach.
  • Host – przestarzała dyrektywa, używana kiedyś przez Yandex do wskazania preferowanej domeny (np. z www lub bez). Obecnie jej funkcję przejęło narzędzie Google Search Console i przekierowania 301.
  • Noindex – nieoficjalna i obecnie niewspierana przez Google dyrektywa, która miała na celu blokowanie indeksowania stron. Google oficjalnie zakończyło jej wsparcie 1 września 2019 roku. Do blokowania indeksacji używaj meta tagu robots lub nagłówka HTTP X-Robots-Tag.

Różnice w interpretacji dyrektyw przez wyszukiwarki

Nie wszystkie wyszukiwarki interpretują dyrektywy robots.txt w ten sam sposób. Największe różnice dotyczą nieoficjalnych poleceń, takich jak Crawl-delay. Poniższa tabela przedstawia kluczowe różnice między Google, Bing i Yandex.

| Dyrektywa | Google | Bing | Yandex |

|—|—|—|—|

| Crawl-delay | Ignorowana. Ustawienia szybkości indeksowania są dostępne w Google Search Console. | Wspierana. Wartość w sekundach (1-30) definiuje okno czasowe, w którym bot może wysłać jedno żądanie. | Wspierana. Wskazuje minimalny czas oczekiwania w sekundach między kolejnymi żądaniami. |

| **Symbole wieloznaczne (*, $)** | Pełne wsparcie dla * (dowolny ciąg znaków) i $ (koniec adresu URL). | Pełne wsparcie, analogicznie do Google. | Pełne wsparcie, analogicznie do Google. |

| Host | Ignorowana (przestarzała). | Ignorowana (przestarzała). | Ignorowana (przestarzała). Preferowaną domenę ustawia się w narzędziach dla webmasterów. |

| Allow | Pełne wsparcie. Reguły Allow mają pierwszeństwo przed Disallow w przypadku konfliktu. | Pełne wsparcie. Działa analogicznie do Google. | Pełne wsparcie. Działa analogicznie do Google. |

Jak stworzyć i gdzie umieścić plik robots.txt?

Plik robots.txt musisz umieścić w głównym katalogu (root) swojej domeny, aby był dostępny pod adresem https://twojadomena.pl/robots.txt. Jest to jedyna lokalizacja, w której wyszukiwarki będą go szukać. Plik musi być prostym plikiem tekstowym (.txt) zakodowanym w formacie UTF-8.

Tworzenie pliku krok po kroku

Proces tworzenia pliku jest prosty i możesz go wykonać na kilka sposobów.

  • Otwórz edytor tekstu – użyj prostego edytora, jak Notatnik w systemie Windows lub TextEdit na Macu. Upewnij się, że zapisujesz plik jako czysty tekst (.txt), a nie w formacie RTF czy DOC.
  • Dodaj dyrektywy – wpisz reguły dla botów. Zacznij od ogólnej reguły dla wszystkich botów (User-agent: *), a następnie dodaj specyficzne reguły dla konkretnych crawlerów, jeśli to konieczne.
  • Wskaż mapę witryny – na końcu pliku dodaj dyrektywę Sitemap: z pełnym adresem URL do Twojej mapy strony, np. Sitemap: https://twojadomena.pl/sitemap.xml.
  • Zapisz plik – nazwij plik robots.txt (małymi literami).
  • Prześlij na serwer – użyj klienta FTP (np. FileZilla) lub menedżera plików w panelu hostingu, aby umieścić plik robots.txt w głównym katalogu publicznym Twojej strony (zazwyczaj public_html, www lub httpdocs).

Tworzenie pliku w WordPress i za pomocą generatorów

Jeśli nie chcesz tworzyć pliku ręcznie, możesz skorzystać z gotowych rozwiązań. Dla systemu WordPress, popularne wtyczki SEO, takie jak Yoast SEO lub Rank Math, oferują wbudowane edytory.

W Yoast SEO:

1. Przejdź do Yoast SEO > Narzędzia w panelu WordPress.

2. Wybierz opcję Edytor plików.

3. Znajdziesz tam sekcję do edycji pliku robots.txt. Jeśli plik nie istnieje, wtyczka pozwoli Ci go utworzyć.

4. Wprowadź swoje dyrektywy i zapisz zmiany.

W Rank Math:

1. Przejdź do Rank Math > Ustawienia ogólne.

2. Wybierz zakładkę Edytuj robots.txt.

3. Wprowadź swoje dyrektywy w polu tekstowym i zapisz zmiany.

Alternatywnie, możesz użyć darmowych generatorów robots.txt dostępnych online. Narzędzia te prowadzą Cię przez proces tworzenia pliku, zadając pytania o domyślne zasady dla botów i katalogi do zablokowania, a na koniec generują gotowy kod do skopiowania.

Przykłady konfiguracji pliku robots.txt

Konfiguracja pliku robots.txt zależy od struktury Twojej witryny i celów SEO. Poniżej znajdziesz kilka najczęstszych scenariuszy, które możesz dostosować do swoich potrzeb.

Całkowite zezwolenie na indeksowanie

Taka konfiguracja informuje wszystkie roboty, że mogą skanować całą zawartość witryny. Jest to domyślne zachowanie w przypadku braku pliku robots.txt.

“`

User-agent: *

Disallow:

“`

Całkowita blokada dla wszystkich robotów

Ta reguła blokuje dostęp do całej witryny wszystkim robotom. Używaj jej ostrożnie, np. na stronach deweloperskich lub testowych, które nie powinny pojawić się w wynikach wyszukiwania.

“`

User-agent: *

Disallow: /

“`

Blokowanie konkretnego katalogu

Jeśli chcesz zablokować dostęp do jednego folderu (np. z obrazkami lub plikami tymczasowymi), użyj następującej reguły.

“`

User-agent: *

Disallow: /prywatny-katalog/

“`

Blokowanie konkretnego typu plików

Możesz zablokować robotom dostęp do wszystkich plików danego typu, na przykład plików PDF. Użyj do tego znaku * jako symbolu wieloznacznego i $ do oznaczenia końca adresu URL.

“`

User-agent: *

Disallow: /*.pdf$

“`

Blokowanie parametrów URL (np. w e-commerce)

W sklepach internetowych często pojawiają się zduplikowane treści przez parametry sortowania czy filtrowania. Możesz je zablokować, aby oszczędzić budżet indeksowania.

“`

User-agent: *

Disallow: /*?sort=

Disallow: /*&filter=

“`

Blokowanie botów AI

Aby uniemożliwić botom AI, takim jak GPTBot (OpenAI), Google-Extended (używany przez Google do trenowania modeli) czy ClaudeBot, skanowanie Twoich treści, dodaj dla nich osobne reguły blokujące.

“`

User-agent: GPTBot

Disallow: /

User-agent: Google-Extended

Disallow: /

User-agent: ClaudeBot

Disallow: /

“`

Jak przetestować plik robots.txt?

Zawsze testuj plik robots.txt po każdej zmianie, aby uniknąć przypadkowego zablokowania ważnych części witryny. Błędna konfiguracja może spowodować poważne problemy z widocznością w wyszukiwarkach. Do weryfikacji poprawności składni i reguł możesz użyć darmowych narzędzi.

Przewodnik po narzędziach do testowania

Chociaż Google wycofało swój klasyczny tester robots.txt z interfejsu Search Console, nadal istnieją skuteczne metody weryfikacji pliku. Najlepszym podejściem jest korzystanie z darmowych narzędzi online, które symulują działanie crawlerów.

Jak używać testera robots.txt online:

1. Znajdź narzędzie – w naszej ofercie znajdziesz darmowy tester robots.txt, który pozwala zweryfikować dostęp dla kilkudziesięciu różnych botów. Inne popularne narzędzia to np. te dostępne na technicalseo.com.

2. Wklej kod lub URL – większość testerów pozwala albo wkleić zawartość Twojego pliku robots.txt bezpośrednio, albo pobierze go automatycznie po podaniu adresu URL Twojej strony.

3. Wybierz User-agenta – z listy dostępnych botów wybierz tego, którego chcesz przetestować, np. Googlebot, Bingbot lub GPTBot.

4. Wpisz adres URL do sprawdzenia – podaj konkretny adres URL z Twojej witryny, aby sprawdzić, czy jest on blokowany, czy dozwolony dla wybranego bota.

5. Analizuj wynik – narzędzie pokaże Ci status (Allowed lub Disallowed) oraz wskaże konkretną linię w pliku robots.txt, która odpowiada za tę regułę. To pozwala szybko zdiagnozować i naprawić ewentualne błędy.

Najczęstsze błędy w pliku robots.txt i jak ich unikać

Błędy w pliku robots.txt są powszechne i mogą prowadzić do poważnych konsekwencji dla SEO, od spadku widoczności po całkowite zniknięcie z wyników wyszukiwania. Unikaj tych pomyłek, aby zapewnić prawidłowe działanie swojej witryny.

Błędy składniowe

  • Literówki – błędna nazwa dyrektywy (np. Disalow zamiast Disallow) sprawi, że cała linia zostanie zignorowana.
  • Nieprawidłowa kolejność – każda grupa reguł musi zaczynać się od User-agent. Umieszczenie Disallow lub Allow przed User-agent jest błędem.
  • Użycie symbolu BOM – plik musi być zakodowany w czystym UTF-8. Zapisanie go w formacie UTF-8 z BOM (Byte Order Mark) może spowodować, że Google nie odczyta go poprawnie.
  • Wielkość liter – nazwy dyrektyw nie są wrażliwe na wielkość liter, ale ścieżki (/Katalog/) już tak. Zawsze używaj ścieżek zgodnych z tymi na serwerze.
  • Brakujący ukośnik – ścieżka w Disallow musi zaczynać się od /. Zapis Disallow: wp-admin/ jest niepoprawny; prawidłowa forma to Disallow: /wp-admin/.

Błędy logiczne i strategiczne

  • Przypadkowe zablokowanie całej witryny – użycie Disallow: / bez zastanowienia to najszybszy sposób na usunięcie strony z Google. Upewnij się, że taka blokada jest celowa.
  • Blokowanie plików CSS i JavaScript – blokowanie dostępu do plików CSS i JS uniemożliwia Googlebotowi poprawne renderowanie strony. Może to zostać zinterpretowane jako próba ukrywania treści (cloaking) i negatywnie wpłynąć na ocenę strony.
  • Używanie robots.txt do ukrywania treści – plik ten nie służy do celów bezpieczeństwa. Wrażliwe dane nie powinny być w ogóle dostępne publicznie w sieci, a nie tylko blokowane przed robotami.
  • Konflikt z noindex – zablokowanie strony w robots.txt uniemożliwia robotowi odczytanie dyrektywy noindex na tej stronie. Jeśli chcesz, aby strona została usunięta z indeksu, musisz najpierw zezwolić na jej skanowanie, aby robot mógł zobaczyć tag noindex.

Zaawansowane strategie dla dużych witryn

W przypadku dużych witryn, takich jak sklepy e-commerce z tysiącami produktów czy portale informacyjne, odpowiednia konfiguracja pliku robots.txt jest kluczowa dla efektywnego zarządzania budżetem indeksowania.

Sklepy e-commerce i nawigacja fasetowa

Nawigacja fasetowa (filtrowanie i sortowanie) może generować ogromną liczbę unikalnych adresów URL o zduplikowanej treści, co marnuje budżet indeksowania. Użyj robots.txt, aby zablokować parametry generowane przez te funkcje.

Przykład:

“`

User-agent: *

Disallow: /*?price=

Disallow: /*?color=

Disallow: /*?size=

Disallow: /*&sort_by=

“`

Zablokuj również dostęp do stron wewnętrznej wyszukiwarki, koszyka, procesu składania zamówienia i kont użytkowników. Pozwoli to skupić roboty na stronach kategorii i produktów.

“`

User-agent: *

Disallow: /search/

Disallow: /koszyk/

Disallow: /zamowienie/

Disallow: /moje-konto/

“`

Portale informacyjne

Duże portale często borykają się z problemem indeksowania wersji do druku, kanałów RSS dla poszczególnych tagów czy wewnętrznych skryptów. Zablokuj te sekcje, aby uniknąć duplikacji i marnowania zasobów crawlera.

Przykład:

“`

User-agent: *

Disallow: /print/

Disallow: /feed/

Disallow: /tag-rss/

“`

Dodatkowo, jeśli portal posiada archiwa generowane według daty, które nie mają dużej wartości SEO, rozważ ich zablokowanie, kierując moc na najważniejsze artykuły i strony kategorii tematycznych.

Alternatywy dla pliku robots.txt

Plik robots.txt kontroluje tylko dostęp do stron, ale nie zapobiega ich indeksowaniu ani nie nadaje się do zarządzania plikami innymi niż HTML. W specyficznych scenariuszach powinieneś użyć innych mechanizmów.

X-Robots-Tag w nagłówkach HTTP

Dyrektywa X-Robots-Tag pozwala na umieszczenie instrukcji dla robotów, takich jak noindex czy nofollow, bezpośrednio w nagłówku HTTP odpowiedzi serwera. Jest to idealne rozwiązanie do kontrolowania indeksowania plików, które nie są plikami HTML, np. obrazów, dokumentów PDF czy plików wideo.

Przykład implementacji w pliku .htaccess (dla serwerów Apache):

“`

<Files ~ “\.pdf$”>

Header set X-Robots-Tag “noindex, nofollow”

</Files>

“`

Ta metoda jest skuteczniejsza niż robots.txt, ponieważ bezpośrednio komunikuje wyszukiwarce, aby nie indeksowała danego zasobu.

Meta tag robots

Najpopularniejszą alternatywą do blokowania indeksowania konkretnej strony HTML jest meta tag robots, umieszczany w sekcji <head> dokumentu. Jest to standardowa i zalecana przez Google metoda.

Przykład:

“`html

<meta name=”robots” content=”noindex, follow”>

“`

Ta dyrektywa mówi robotom, aby nie indeksowały tej strony, ale mogą podążać za linkami na niej umieszczonymi. Pamiętaj, że strona musi być dostępna do skanowania (niezablokowana w robots.txt), aby robot mógł odczytać ten tag.

Aspekty prawne związane z plikiem robots.txt

Plik robots.txt działa w oparciu o Protokół Wykluczania Robotów (REP), który jest standardem dobrowolnym, a nie prawnie wiążącym mechanizmem. Oznacza to, że nie ma globalnego prawa, które zmuszałoby właścicieli botów do jego przestrzegania. Renomowane wyszukiwarki i narzędzia SEO stosują się do tych zasad, ale złośliwe boty, zwłaszcza te używane do agresywnego scrapingu danych, często go ignorują.

Mimo to, świadome ignorowanie dyrektyw z pliku robots.txt w celu pozyskania danych może mieć konsekwencje prawne w niektórych jurysdykcjach. Działania takie mogą być uznane za naruszenie warunków korzystania z serwisu, a w skrajnych przypadkach nawet za nieautoryzowany dostęp do systemu komputerowego (np. na mocy amerykańskiej ustawy Computer Fraud and Abuse Act). W Unii Europejskiej ochrona baz danych i praw autorskich może również stanowić podstawę do roszczeń przeciwko podmiotom masowo pobierającym treści wbrew wytycznym z robots.txt.

FAQ – Najczęściej zadawane pytania

Oto odpowiedzi na najczęstsze pytania dotyczące pliku robots.txt i jego roli w SEO.

1. Co się stanie, jeśli nie mam pliku robots.txt?

Jeśli Twoja witryna nie ma pliku robots.txt, roboty wyszukiwarek przyjmą, że mogą skanować całą jej zawartość. Dla większości małych stron jest to w porządku, ale zaleca się utworzenie nawet prostego pliku, aby wskazać lokalizację mapy witryny.

2. Czy plik robots.txt wpływa na szybkość strony?

Nie, plik robots.txt nie ma bezpośredniego wpływu na szybkość ładowania strony dla użytkowników. Jego celem jest zarządzanie ruchem robotów, a nie optymalizacja wydajności witryny.

3. Jak często Google sprawdza plik robots.txt?

Google buforuje (zapamiętuje) zawartość pliku robots.txt przez maksymalnie 24 godziny. Oznacza to, że zmiany wprowadzone w pliku mogą być widoczne dla Googlebota z opóźnieniem do jednego dnia.

4. Jaki jest maksymalny rozmiar pliku robots.txt?

Google obsługuje pliki robots.txt o rozmiarze do 500 kibibajtów (KiB), jak podaje oficjalna dokumentacja. Treść przekraczająca ten limit zostanie zignorowana. Dla większości witryn jest to więcej niż wystarczający limit.

5. Co zrobić, gdy plik robots.txt jest niedostępny (błąd 404 lub 5xx)?

Jeśli Googlebot napotka błąd 4xx (np. 404 Not Found) podczas próby pobrania pliku, uzna, że nie ma żadnych ograniczeń i przeskanuje całą witrynę. W przypadku błędu serwera 5xx (np. 503 Service Unavailable), Google wstrzyma skanowanie witryny. Jeśli problem z dostępem do pliku trwa dłużej niż 30 dni, Google potraktuje go tak, jakby nie istniał.

6. Czy blokada w robots.txt wpływa na wartość linków?

Zablokowanie strony w pliku robots.txt nie pozwala robotom na jej skanowanie, co oznacza, że nie mogą one również podążać za linkami wychodzącymi z tej strony. Wartość linków (link juice) nie jest przekazywana dalej. Linki prowadzące do zablokowanej strony nadal przekazują swoją wartość, ale sama strona może nie zostać zaindeksowana.

7. Czy każdy bot przestrzega zasad z pliku robots.txt?

Nie. Protokół Wykluczania Robotów jest dobrowolny. Renomowane roboty, takie jak Googlebot, Bingbot czy boty narzędzi SEO (Ahrefs, Majestic), przestrzegają tych zasad. Jednak złośliwe boty, scrapersy czy niektóre boty AI mogą całkowicie ignorować jego zawartość.

8. Jak często należy aktualizować plik robots.txt?

Aktualizuj plik robots.txt za każdym razem, gdy zmienia się struktura Twojej witryny, dodajesz nowe sekcje, które nie powinny być indeksowane (np. nowy panel klienta) lub gdy chcesz zablokować nowego, niechcianego bota. Dobrą praktyką jest przeglądanie pliku co kilka miesięcy w ramach audytu technicznego SEO.

  • kontakt@rocketbay.pl
  • 783 848 965