Gdy strona zaczyna mieć setki adresów, filtrów i plików technicznych, robot wyszukiwarki może tracić czas na miejsca, które nie mają wartości dla użytkownika. W praktyce za skrótem robot txt kryje się plik robots.txt, który pomaga kontrolować dostęp crawlerów do wybranych części witryny. Pokażę, jak go poprawnie skonfigurować, czego nie blokować i dlaczego ten niewielki plik potrafi zarówno uporządkować SEO, jak i przypadkowo odciąć stronę od indeksowania.
Najważniejsze zasady konfiguracji robots.txt
- Robots.txt steruje crawlowaniem, ale nie gwarantuje usunięcia strony z wyników wyszukiwania.
- Plik musi znajdować się w katalogu głównym domeny i być zapisany jako zwykły tekst UTF-8.
- Najważniejsze dyrektywy to User-agent, Disallow, Allow oraz Sitemap.
- Nie blokuj plików CSS i JavaScript, jeśli są potrzebne do prawidłowego renderowania strony.
- Po każdej zmianie sprawdź, czy reguła nie odcina ważnych podstron, zasobów lub całej witryny.

Co robi plik robots.txt i czego nie robi
Robots.txt to niewielki plik tekstowy umieszczony w katalogu głównym serwisu. Informuje roboty, które ścieżki mogą odwiedzać, a do których nie powinny wysyłać żądań. Reguły dotyczą konkretnego hosta, protokołu i portu, dlatego plik dla wersji z „www” nie steruje automatycznie wersją bez tego prefiksu.
Najczęściej wykorzystuję go do ograniczania crawlowania stron technicznych, paneli, koszyków, wyników filtrowania i innych adresów, które tworzą wiele podobnych wariantów. Nie jest to jednak narzędzie do zabezpieczania danych. Każdy może odczytać zawartość pliku, więc wpisanie tam nazwy ukrytego katalogu może wręcz podpowiedzieć, gdzie go szukać.
Crawlowanie a indeksowanie
To rozróżnienie ma ogromne znaczenie. Zablokowanie adresu przez Disallow ogranicza dostęp robota, ale nie zawsze usuwa adres z indeksu. Jeśli inne strony prowadzą do zablokowanej podstrony, wyszukiwarka może znać sam adres i pokazać go w wynikach bez pełnego opisu.
Jeżeli celem jest wyłączenie strony z wyników wyszukiwania, lepszym rozwiązaniem będzie dyrektywa noindex, nagłówek X-Robots-Tag, usunięcie strony albo zabezpieczenie jej hasłem. Trzeba jednak pamiętać, że robot musi mieć możliwość odwiedzenia strony, aby odczytać instrukcję noindex. Zablokowanie jej równocześnie w robots.txt może więc utrudnić wykonanie zamierzonego działania.
Jak zbudować poprawne reguły dla crawlerów
Podstawowa składnia jest prosta. Najpierw wskazujesz robota, którego dotyczy grupa reguł, a potem określasz dozwolone i zablokowane ścieżki. Pusta wartość przy Disallow oznacza brak blokady, natomiast Disallow: / blokuje cały serwis dla wskazanych crawlerów.
User-agent: *
Disallow: /panel/
Disallow: /koszyk/
Disallow: /wyszukiwarka/
Allow: /koszyk/pomoc/Znak * oznacza wszystkie roboty. W powyższym przykładzie większość crawlerów nie powinna odwiedzać panelu, koszyka ani wewnętrznej wyszukiwarki, ale może pobrać stronę pomocy umieszczoną w zablokowanym katalogu. Reguła Allow może wyjąć konkretną ścieżkę z szerszego zakazu, choć warto używać tego mechanizmu oszczędnie i sprawdzać, jak interpretuje go dany crawler.
Najważniejsze dyrektywy
| Dyrektywa | Zastosowanie | Przykład |
|---|---|---|
User-agent |
Wskazuje, którego robota dotyczą reguły. | User-agent: * |
Disallow |
Blokuje dostęp do określonej ścieżki. | Disallow: /admin/ |
Allow |
Pozwala wejść na konkretną ścieżkę mimo szerszej blokady. | Allow: /admin/public/ |
Sitemap |
Wskazuje mapę XML witryny. | Pełny adres mapy XML |
Ścieżki są wrażliwe na wielkość liter, dlatego /Blog/ i /blog/ mogą oznaczać różne miejsca. Google obsługuje także symbole wieloznaczne * oraz $, który oznacza koniec adresu. Nie zakładam jednak, że każdy mniej popularny crawler zinterpretuje je identycznie. Im prostsza reguła, tym mniejsze ryzyko nieporozumienia.
Co blokować, a czego lepiej nie ruszać
Najbezpieczniejszy punkt wyjścia to blokowanie adresów, które nie powinny zużywać budżetu crawlowania. Dotyczy to między innymi panelu logowania, zaplecza, koszyka, stron z parametrami sesji, wewnętrznych wyników wyszukiwania oraz niekończących się kombinacji filtrów.
- Panel administracyjny nie wnosi wartości do indeksu i nie powinien być odwiedzany przez wyszukiwarki.
- Koszyk i konto użytkownika zwykle zawierają treści prywatne lub zależne od sesji.
- Wewnętrzna wyszukiwarka może generować tysiące podobnych adresów.
- Parametry sortowania i filtrowania wymagają indywidualnej oceny, bo czasem tworzą wartościowe landing page’e.
- Pliki CSS i JavaScript powinny pozostać dostępne, jeśli wpływają na wygląd lub strukturę strony.
W sklepach internetowych często widzę zbyt szerokie blokady parametrów. Automatyczne wykluczenie wszystkiego po znaku zapytania może odciąć zarówno bezużyteczne sortowania, jak i ważne strony kampanii. Najpierw sprawdzam, które adresy faktycznie generują duplikację, a dopiero później tworzę regułę.
Nie blokowałbym również całych katalogów z obrazami, skryptami lub arkuszami stylów bez konkretnego powodu. Robot może potrzebować tych zasobów, aby poprawnie zrozumieć układ strony. W efekcie pozornie „czysta” konfiguracja może pogorszyć ocenę treści, wersji mobilnej albo elementów widocznych dla użytkownika.
Robots.txt a widoczność strony w SEO
Sam plik nie poprawia pozycji strony. Jego zadaniem jest raczej uporządkowanie pracy crawlerów i ograniczenie dostępu do adresów o niskiej wartości. Na dużym serwisie może to pomóc skierować uwagę robotów na strony produktowe, kategorie i artykuły, zamiast na setki technicznych wariantów.
Na małym blogu rozbudowane reguły często nie są potrzebne. Jeśli witryna ma kilkadziesiąt dobrze zlinkowanych podstron, pusta konfiguracja albo bardzo prosty plik może być rozsądniejszy niż lista zakazów przygotowana na zapas. Nie każdy problem z indeksowaniem wymaga edycji robots.txt.
Przeczytaj również: Keyword Surfer w SEO - szybki research słów kluczowych
Budżet crawlowania i duże witryny
Budżet crawlowania to umowna liczba zasobów, które robot może pobrać w danym czasie, zanim uzna dalsze odwiedziny za mniej potrzebne. Na małych stronach rzadko jest to realne ograniczenie, ale w sklepach z tysiącami produktów, filtrami i parametrami URL dobrze ustawione reguły mogą zmniejszyć liczbę zbędnych żądań.
Nie traktuję jednak robots.txt jako zamiennika porządnej architektury informacji. Jeśli serwis tworzy miliony niepotrzebnych adresów, trzeba naprawić źródło problemu, czyli routing, linkowanie, canonicale albo sposób generowania filtrów. Plik tekstowy może ograniczyć skutki bałaganu, ale go nie naprawi.
Jak wdrożyć i przetestować zmiany bez ryzyka
Przed publikacją sprawdzam plik w kilku prostych krokach. Dzięki temu można wychwycić błąd, który w jednej chwili zablokowałby całą domenę albo najważniejsze sekcje serwisu.
- Otwórz plik w katalogu głównym domeny i upewnij się, że serwer zwraca kod 200, a nie stronę błędu lub przekierowanie.
- Sprawdź, czy plik jest zwykłym tekstem zapisanym w UTF-8, bez elementów HTML i nietypowego formatowania.
- Przejrzyj każdą regułę na konkretnych adresach, zwłaszcza po zmianie struktury URL.
- Zweryfikuj ważne podstrony oraz zasoby w narzędziach dla webmasterów.
- Po wdrożeniu monitoruj statystyki crawlowania, indeksowanie i raporty błędów.
Plik powinien znajdować się dokładnie pod ścieżką /robots.txt, a nie w podkatalogu. Jego zawartość musi być krótka i czytelna. Wyszukiwarki mają limit wielkości, a po przekroczeniu około 500 KiB dalsza część może zostać zignorowana.
W systemach CMS konfiguracja bywa generowana automatycznie. W takim przypadku ręczna edycja pliku na serwerze może zostać nadpisana przy aktualizacji wtyczki lub zmianie ustawień. Zanim coś poprawię, sprawdzam, który system faktycznie tworzy reguły, bo inaczej nawet dobra korekta może zniknąć następnego dnia.
Błędy, które potrafią odciąć ruch organiczny
Najgroźniejsza pomyłka to przypadkowe użycie Disallow: / przy User-agent: *. Taki zapis blokuje całą witrynę dla wszystkich robotów objętych grupą. Zdarza się to przy migracji, wdrożeniu wersji testowej albo kopiowaniu konfiguracji z innego środowiska.
Drugim częstym problemem jest zablokowanie katalogu, w którym znajdują się zarówno zasoby techniczne, jak i ważne treści. Reguła może wyglądać logicznie, ale obejmować więcej adresów, niż zakładał autor. Przy ścieżkach warto testować pełny wzorzec, a nie tylko jeden przykład.
Do typowych błędów zaliczam również:
- używanie robots.txt do ukrywania poufnych danych,
- blokowanie strony, która ma otrzymać status
noindex, - pozostawienie blokad po zakończeniu migracji lub prac deweloperskich,
- dodawanie dyrektyw nieobsługiwanych przez najważniejsze wyszukiwarki, takich jak
crawl-delay, - brak testu wersji mobilnej po zablokowaniu skryptów lub arkuszy stylów.
Jeśli witryna nagle traci widoczność, robots.txt powinien znaleźć się wysoko na liście kontroli, szczególnie po zmianie serwera, CMS-a, domeny albo wtyczki SEO. Czasem jedna linia wyjaśnia spadek, którego nie da się zauważyć w samej treści strony.
Mały plik, duża odpowiedzialność za indeksowanie
Dobrze skonfigurowany robots.txt porządkuje dostęp crawlerów, ogranicza marnowanie zasobów i pomaga skupić crawlowanie na wartościach stronach. Nie zastąpi jednak zabezpieczeń, noindex, canonicali ani dobrej architektury serwisu.
Moja praktyczna zasada jest prosta: blokuję tylko to, czego naprawdę nie chcę udostępniać robotom, każdą zmianę testuję na konkretnych adresach i wracam do pliku po większych wdrożeniach. Najlepsza konfiguracja nie jest najbardziej rozbudowana, lecz najbardziej przewidywalna.