Jak działa dopasowywanie reguł w robots.txt
Plik robots.txt organizuje instrukcje w grupy zaczynające się od co najmniej jednej linii User-agent. Każdy robot indeksujący, który odwiedza witrynę, szuka sekcji przypisanej bezpośrednio do jego identyfikatora. Zgodnie ze standardem RFC 9309 crawler najpierw sprawdza, czy istnieje grupa z jego dokładną nazwą (na przykład Googlebot lub GPTBot). Jeśli jej nie znajdzie, szuka tokenu nadrzędnego (na przykład Googlebot-Image przechodzi do reguł dla Googlebot). Dopiero przy braku dedykowanej grupy bot stosuje ogólną grupę oznaczoną gwiazdką User-agent: *.
Kluczową zasadą jest to, że znalezienie dopasowanej grupy zastępuje reguły ogólne, zamiast się z nimi łączyć. Jeżeli w pliku zdefiniowano reguły dla * oraz osobną grupę dla GPTBot, robot ten odczyta wyłącznie instrukcje ze swojej sekcji i całkowicie zignoruje dyrektywy z grupy *. Tester robots.txt pozwala sprawdzić, która grupa zostanie przypisana do wybranego crawlera i jakie reguły faktycznie wpłyną na jego zachowanie podczas pobierania podstron.
Zasada najdłuższego dopasowania i pierwszeństwo reguł
Gdy robot przypisze się do odpowiedniej grupy, analizuje zawarte w niej dyrektywy Allow oraz Disallow. W przypadku konfliktu, gdy pod dany adres URL pasuje więcej niż jedna reguła, wygrywa zasada najdłuższego dopasowania (ang. longest match). Liczy się długość ścieżki podanej w dyrektywie, mierzona w znakach. Jeśli długości dopasowanych reguł są identyczne, priorytet otrzymuje reguła zezwalająca Allow.
| Dyrektywa |
Ścieżka URL |
Wynik dopasowania |
Uzasadnienie |
Disallow: /katalog/ |
/katalog/produkt |
Blokada |
Dopasowanie o długości 9 znaków |
Allow: /katalog/produkt |
/katalog/produkt |
Zezwolenie |
Dłuższa reguła wygrywa (16 znaków) |
Disallow: / oraz Allow: / |
/kontakt |
Zezwolenie |
Remis długości, wygrywa Allow |
Pusty Disallow: |
/dowolna-strona |
Zezwolenie |
Pusta dyrektywa czyści wcześniejsze blokady |
Większość nowoczesnych crawlerów obsługuje również znaki specjalne, które nie były częścią pierwotnego standardu: gwiazdkę * oznaczającą dowolny ciąg znaków oraz znak dolara $ oznaczający koniec adresu URL. Przykładowo reguła Disallow: /*.pdf$ zablokuje wyłącznie pliki kończące się rozszerzeniem PDF, pozwalając na pobieranie adresów z parametrami takimi jak /plik.pdf?wersja=2.
Testowanie botów AI i dyrektywa Content-Signal
Rozwój generatywnej sztucznej inteligencji wprowadził do sieci nową klasę crawlerów, takich jak GPTBot, ClaudeBot, CCBot czy Google-Extended. Właściciele stron internetowych coraz częściej decydują o selektywnym blokowaniu pobierania treści na potrzeby trenowania modeli przy jednoczesnym zachowaniu widoczności w tradycyjnych wynikach wyszukiwania. Aby poprawnie skonstruować zestaw reguł dla tych botów, warto wykorzystać generator reguł robots.txt dla botów AI, a następnie przetestować wynikowy plik w narzędziu diagnostycznym.
Niektóre pliki wprowadzają dyrektywę Content-Signal, która służy do deklarowania preferencji dotyczących wykorzystania materiałów w modelach maszynowych (wartości takie jak search, ai-input czy ai-train). Tester robots.txt odczytuje tę linię i raportuje jej obecność dla testowanego agenta. Należy pamiętać, że Content-Signal jest deklaracją intencji wydawcy, a nie techniczną blokadą protokołu HTTP. Do weryfikacji tożsamości robotów i potwierdzenia, czy dany agent faktycznie reprezentuje deklarowaną organizację, służy z kolei generator kluczy autoryzacyjnych.
Zakres działania i środowisko uruchomieniowe testera
Tester robots.txt działa w całości w przeglądarce internetowej użytkownika. Narzędzie nie wysyła zapytań sieciowych po pliki z serwera ani nie wymaga podawania danych uwierzytelniających. Oznacza to, że można w nim bezpiecznie testować robocze wersje plików, środowiska stagingowe oraz prywatne konfiguracje bez ryzyka wycieku danych poza urządzenie.
Narzędzie skupia się na symulacji parsera zgodnego ze standardem RFC 9309. Z wklejonych pełnych adresów URL wyodrębniana jest ścieżka wraz z parametrami zapytania (query string). Tester nie pobiera kodu HTML sprawdzanych podstron, nie bada nagłówków HTTP X-Robots-Tag ani tagów meta robots w sekcji nagłówkowej witryny. Do kompletnego opisu struktury treści dla nowoczesnych systemów uczących się oprócz standardowych dyrektyw indeksowania warto wdrożyć również dedykowany plik llms.txt, który wspiera komunikację z modelami językowymi.