Tworzenie i przesyłanie pliku robots.txt

Plik robots.txt pozwala kontrolować dostęp robotów do plików w Twojej witrynie.

Plik robots.txt znajduje się w katalogu głównym witryny. W przypadku witryny www.example.com plik robots.txt znajduje się pod adresem www.example.com/robots.txt. Ma on format zwykłego tekstu i jest zgodny ze standardem Robots Exclusion Protocol. Plik robots.txt zawiera co najmniej 1 regułę. Każda reguła blokuje lub umożliwia dostęp wszystkich robotów lub określonego robota do wskazanego pliku w domenie lub subdomenie, w której jest przechowywany plik robots.txt. Domyślnie wszystkie pliki mogą być skanowane, o ile nie określisz inaczej w pliku robots.txt.

Oto prosty plik robots.txt z 2 regułami:

User-agent: Googlebot
Disallow: /nogooglebot/

User-agent: *
Allow: /

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

Co oznacza ten plik robots.txt:

  1. Klient użytkownika o nazwie Googlebot nie może indeksować żadnych adresów URL zaczynających się od https://example.com/nogooglebot/.
  2. Wszystkie inne klienty użytkownika mogą indeksować całą witrynę. Tę regułę można było pominąć – rezultat byłby taki sam. Domyślnie klienty użytkownika mogą indeksować całą witrynę.
  3. Plik mapy witryny znajduje się pod adresem https://www.example.com/sitemap.xml.

Więcej przykładów znajdziesz w sekcji Składnia.

Podstawowe wskazówki dotyczące tworzenia pliku robots.txt

Przygotowanie pliku robots.txt, który będzie ogólnie dostępny i przydatny, wymaga wykonania 4 czynności:

  1. utworzenia pliku o nazwie robots.txt,
  2. dodania reguł do pliku robots.txt,
  3. przesłania pliku robots.txt do katalogu głównego witryny,
  4. przetestowania pliku robots.txt.

Tworzenie pliku robots.txt

Do utworzenia pliku robots.txt możesz użyć prawie każdego edytora tekstu. Prawidłowe pliki robots.txt można na przykład tworzyć w programach: Notatnik, TextEdit, vi oraz emacs. Nie używaj zaawansowanego programu do edytowania tekstu, ponieważ takie programy często zapisują pliki w zastrzeżonym formacie i dodają nieoczekiwane znaki (np. cudzysłowy drukarskie), które sprawiają problemy robotom. Jeśli w oknie dialogowym zapisywania pliku pojawi się prośba o określenie kodowania, wybierz UTF-8.

Zasady dotyczące formatu i lokalizacji:

  • Plik musi się nazywać robots.txt.
  • Witryna może mieć tylko 1 plik robots.txt.
  • Plik robots.txt musi się znajdować w katalogu głównym hosta witryny, do której się odnosi. Aby na przykład kontrolować indeksowanie wszystkich adresów URL witryny https://www.example.com/, plik robots.txt musi mieć lokalizację https://www.example.com/robots.txt. Nie można go umieścić w podkatalogu (na przykład https://example.com/pages/robots.txt). Jeśli nie wiesz, jak uzyskać dostęp do katalogu głównego witryny, lub potrzebujesz do tego uprawnień, skontaktuj się ze swoim dostawcą hostingu WWW. Jeśli nie masz dostępu do katalogu głównego witryny, możesz zablokować roboty w inny sposób, np. przy użyciu tagów meta.
  • Plik robots.txt może być publikowany w subdomenie (np. https://site.example.com/robots.txt) lub w portach niestandardowych (np. https://example.com:8181/robots.txt).
  • Plik robots.txt dotyczy tylko ścieżek w ramach protokołu, hosta i portu, gdzie został opublikowany. Oznacza to, że reguły w pliku https://example.com/robots.txt będą mieć zastosowanie tylko do plików na https://example.com/, a nie do subdomen (takich jak https://m.example.com/) czy alternatywnych protokołów, takich jak http://example.com/.
  • Plik robots.txt musi być plikiem tekstowym zakodowanym w formacie UTF-8 (który zawiera znaki ASCII). Google może ignorować znaki spoza zakresu UTF-8, przez co reguły w pliku robots.txt mogą być renderowane nieprawidłowo.

Jak pisać reguły pliku robots.txt

Reguły to instrukcje wskazujące robotom, które części witryny mogą indeksować. Podczas dodawania reguł do pliku robots.txt postępuj zgodnie z tymi wskazówkami:

  • Plik robots.txt zawiera co najmniej 1 grupę (zestaw reguł).
  • Każda grupa składa się z kilku reguł (nazywanych też dyrektywami), po jednej w wierszu. Każda grupa zaczyna się od wiersza User-agent, który określa cel grupy.
  • Grupa zawiera te informacje:
    • do kogo ma zastosowanie grupa (do jakiego klienta użytkownika),
    • do których katalogów lub plików klient użytkownika może uzyskać dostęp,
    • do których katalogów lub plików klient użytkownika nie może uzyskać dostępu.
  • Roboty przetwarzają grupy od góry do dołu. Klient użytkownika jest dopasowywany tylko do 1 zestawu reguł – do pierwszej najmocniej sprecyzowanej grupy, która się do niego odnosi. Jeśli do tego samego klienta użytkownika odnosi się kilka grup, przed przetworzeniem zostaną one połączone w 1 grupę.
  • Z założenia klient użytkownika może indeksować wszystkie strony lub katalogi, które nie są zablokowane przy użyciu reguły disallow.
  • Wielkość liter w regułach jest rozróżniana. Na przykład reguła disallow: /file.asp ma zastosowanie do witryny https://www.example.com/file.asp, ale do witryny https://www.example.com/FILE.asp już nie.
  • Znak # oznacza początek komentarza. Podczas przetwarzania komentarze są ignorowane.

Roboty Google obsługują w plikach robots.txt te reguły:

  • user-agent: [wymagana, co najmniej 1 na grupę] – określa nazwę automatycznego klienta znanego jako robot wyszukiwarki, do którego odnosi się reguła. Jest to pierwszy wiersz każdej reguły. Nazwy klientów Google znajdziesz na liście klientów użytkownika Google. Użycie gwiazdki (*) powoduje, że reguła odnosi się do wszystkich robotów z wyjątkiem różnych robotów AdsBot, które należy wyraźnie wskazać. Na przykład:
    # Example 1: Block only Googlebot
    User-agent: Googlebot
    Disallow: /
    
    # Example 2: Block Googlebot and Adsbot
    User-agent: Googlebot
    User-agent: AdsBot-Google
    Disallow: /
    
    # Example 3: Block all crawlers except AdsBot (AdsBot crawlers must be named explicitly)
    User-agent: *
    Disallow: /
  • disallow: [w regule wymagany jest co najmniej 1 wpis disallow lub allow] – katalog lub strona domeny głównej, które nie powinny być indeksowane przez klienta użytkownika. W przypadku strony należy podać jej pełną nazwę widoczną w przeglądarce. Musi zaczynać się od znaku /, a jeśli odnosi się do katalogu, musi kończyć się znakiem /.
  • allow: [w regule wymagany jest co najmniej 1 wpis disallow lub allow] – katalog lub strona domeny głównej, które mogą być indeksowane przez wspomnianego klienta użytkownika. Pozwala zastąpić regułę disallow, aby zezwolić na indeksowanie podkatalogów lub stron zlokalizowanych w katalogu objętym instrukcją „disallow”. W przypadku pojedynczej strony należy podać jej pełną nazwę widoczną w przeglądarce. Musi zaczynać się od znaku /, a jeśli odnosi się do katalogu, musi kończyć się znakiem /.
  • sitemap: [element opcjonalny, niewymagany w pliku] – lokalizacja mapy witryny. Adres URL mapy witryny musi być w pełni kwalifikowanym adresem URL. Google nie zakłada ani nie sprawdza wariantów adresów http/https, www / bez www. Użycie mapy witryny to dobry sposób, aby wskazać robotowi Google treści, które powinien indeksować, oraz te, które może lub których nie może indeksować. Więcej informacji o mapach witryny Na przykład:
    Sitemap: https://example.com/sitemap.xml
    Sitemap: https://www.example.com/sitemap.xml

Wszystkie reguły oprócz sitemap obsługują symbol wieloznaczny *, którego można użyć jako prefiksu, sufiksu lub całej ścieżki.

Wiersze, które nie pasują do żadnej z tych reguł, są ignorowane.

Pełny opis poszczególnych reguł znajdziesz na naszej stronie z informacjami o tym, jak Google interpretuje specyfikację pliku robots.txt.

Przesyłanie pliku robots.txt

Po zapisaniu pliku robots.txt na komputerze możesz go udostępnić robotom wyszukiwarek. Nie ma jednego narzędzia, które Ci w tym pomoże, ponieważ sposób przesyłania pliku robots.txt zależy od architektury witryny i serwera. Skontaktuj się z firmą hostingową lub przejrzyj jej dokumentację, np. wyszukaj „prześlij pliki infomaniak”.

Po przesłaniu pliku robots.txt sprawdź, czy jest on publicznie dostępny i czy Google może go przeanalizować.

Testowanie znaczników pliku robots.txt

Aby sprawdzić, czy nowo przesłany plik robots.txt jest publicznie dostępny, otwórz w przeglądarce okno przeglądania prywatnego (lub jego odpowiednik) i przejdź do lokalizacji pliku robots.txt. Na przykład: https://example.com/robots.txt. Jeśli widzisz zawartość pliku robots.txt, możesz przetestować znaczniki.

Google oferuje 2 sposoby rozwiązywania problemów ze znacznikami pliku robots.txt:

  1. Raport dotyczący pliku robots.txt w Search Console. Tego narzędzia możesz używać tylko w przypadku plików robots.txt, które są już dostępne w Twojej witrynie.
  2. Jeśli jesteś programistą, sprawdź naszą bibliotekę Google typu open source z zasobami dotyczącymi pliku robots.txt, która jest też używana w wyszukiwarce Google. Możesz też dodać do niej kolejne zasoby. Za pomocą tego narzędzia możesz lokalnie testować pliki robots.txt na komputerze.

Przesyłanie pliku robots.txt do Google

Gdy prześlesz i przetestujesz plik robots.txt, roboty Google automatycznie go znajdą i zaczną z niego korzystać. To znaczy, że nie musisz nic więcej robić. Jeśli po zaktualizowaniu pliku robots.txt chcesz jak najszybciej odświeżyć jego kopię przechowywaną w pamięci podręcznej Google, dowiedz się, jak przesłać zaktualizowany plik robots.txt.

Przydatne reguły pliku robots.txt

Oto kilka częstych przydatnych reguł pliku robots.txt:

Przydatne reguły
Zakaz indeksowania całej witryny

Pamiętaj, że w niektórych sytuacjach adresy URL z witryny wciąż mogą być indeksowane, nawet gdy nie zostały przeskanowane.

User-agent: *
Disallow: /
Zakaz indeksowania katalogu i jego zawartości

Aby zablokować indeksowanie całego katalogu, dodaj do jego nazwy ukośnik.

User-agent: *
Disallow: /calendar/
Disallow: /junk/
Disallow: /books/fiction/contemporary/
Zezwolenie na dostęp jednemu robotowi

Tylko googlebot-news może zindeksować całą witrynę.

User-agent: Googlebot-news
Allow: /

User-agent: *
Disallow: /
Zezwolenie na dostęp wszystkim robotom oprócz jednego

Unnecessarybot nie może indeksować witryny. Wszystkie inne roboty mogą.

User-agent: Unnecessarybot
Disallow: /

User-agent: *
Allow: /

Zakaz indeksowania jednej strony internetowej

Na przykład: zakaz indeksowania strony useless_file.html pod adresem https://example.com/useless_file.html i strony other_useless_file.html w katalogu junk.

User-agent: *
Disallow: /useless_file.html
Disallow: /junk/other_useless_file.html

Zakaz skanowania całej witryny z wyjątkiem podkatalogu

Roboty mają dostęp tylko do podkatalogu public.

User-agent: *
Disallow: /
Allow: /public/

Zakaz dostępu do konkretnego obrazu w Grafice Google

Na przykład: zakaz indeksowania obrazu dogs.jpg.

User-agent: Googlebot-Image
Disallow: /images/dogs.jpg

Zakaz dostępu do wszystkich obrazów z Twojej witryny w Grafice Google

Google nie może indeksować obrazów ani filmów bez ich skanowania.

User-agent: Googlebot-Image
Disallow: /

Zakaz indeksowania plików określonego typu

Na przykład: zakaz indeksowania wszystkich plików .gif.

User-agent: Googlebot
Disallow: /*.gif$

Zakaz indeksowania całej witryny, ale z zezwoleniem dla robota Mediapartners-Google

Strony nie będą widoczne w wynikach wyszukiwania, ale robot Mediapartners-Google wciąż będzie mógł je analizować, aby wybierać reklamy do wyświetlenia użytkownikom witryny.

User-agent: *
Disallow: /

User-agent: Mediapartners-Google
Allow: /
Użycie symboli wieloznacznych *$ w celu dopasowania adresów URL, które kończą się określonym ciągiem

Na przykład: zakaz indeksowania wszystkich plików .xls.

User-agent: Googlebot
Disallow: /*.xls$