Blokowanie URL-i w pliku robots.txt

Tworzenie pliku robots.txt

Jeśli korzystasz z usługi hostingu witryn, takiej jak Wix czy Blogger, utworzenie lub edytowanie pliku robots.txt może nie być konieczne.

Pierwsze kroki

Plik robots.txt znajduje się w katalogu głównym witryny. Na przykład w witrynie www.example.com ma on adres www.example.com/robots.txt, format zwykłego tekstu i jest zgodny ze standardem Robots Exclusion Protocol. Plik robots.txt zawiera co najmniej jedną regułę. Każda reguła blokuje (lub zezwala na) dostęp określonego robota do wskazanego pliku w danej witrynie.

Oto prosty plik robots.txt z dwiema regułami objaśnionymi poniżej:

# Reguła 1
User-agent: Googlebot
Disallow: /nogooglebot/

# Reguła 2
User-agent: *
Allow: /

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

 

Wyjaśnienie:

  1. Robot o nazwie „Googlebot” nie powinien pobierać folderu http://example.com/nogooglebot/ ani żadnego z jego podkatalogów.
  2. Wszystkie pozostałe klienty użytkownika mogą uzyskiwać dostęp do całej witryny. (Tę regułę można było pominąć – rezultat byłby taki sam, ponieważ pełen dostęp jest dozwolony z założenia).
  3. Plik mapy witryny jest w lokalizacji http://www.example.com/mapawitryny.xml

Bardziej szczegółowy przykład znajdziesz poniżej.

Podstawowe wytyczne związane z plikiem robots.txt

Tutaj znajdziesz podstawowe wskazówki dotyczące pliku robots.txt. Zalecamy zapoznanie się z pełną składnią plików robots.txt, ponieważ małe jej zmiany mogą skutkować odmiennym zachowaniem określonego robota.

Format i lokalizacja

Do utworzenia pliku robots.txt możesz użyć prawie każdego edytora tekstu. Musi on mieć opcję zapisu standardowych plików tekstowych ASCII lub UTF-8. 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.

Do tworzenia lub edytowania plików robots.txt na potrzeby witryny używaj Testera pliku robots.txt. Narzędzie to pozwala przetestować składnię i działanie pliku w witrynie.

Zasady dotyczące formatu i lokalizacji:

  • Plik musi się nazywać robots.txt.
  • Witryna może mieć tylko jeden 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 http://www.example.com/, plik robots.txt musi się znajdować w lokalizacji http://www.example.com/robots.txt. Nie można go umieścić w podkatalogu (na przykład w lokalizacji http://example.com/strony/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. Jeśli nie masz dostępu do katalogu głównego witryny, możesz zablokować roboty w inny sposób, np. przy użyciu metatagów.
  • Plik robots.txt może odnosić się do subdomen (na przykład http://witryna.example.com/robots.txt) lub do portów niestandardowych (na przykład http://example.com:8181/robots.txt).
  • Komentarze to wszystkie wiersze zaczynające się znakiem #. 

Składnia

  • Plik musi być plikiem tekstowym ASCII lub UTF-8. Żadne inne znaki nie są dozwolone.
  • Plik robots.txt zawiera co najmniej jedną regułę.
  • Każda reguła składa się z wielu dyrektyw (instrukcji), przy czym w jednym wierszu może znajdować się jedna dyrektywa.
  • Reguła zawiera te informacje (niektóre lub wszystkie):
    • do kogo ma zastosowanie reguła (do jakiego klienta użytkownika);
    • do których katalogów lub plików klient użytkownika może uzyskiwać dostęp;
    • do których katalogów lub plików klient użytkownika nie może uzyskiwać dostępu.
  • Reguły są przetwarzane od góry do dołu, a klient użytkownika jest dopasowywany tylko do jednego zestawu reguł – do pierwszej, najbardziej sprecyzowanej reguły, która się do niego odnosi.
  • 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: /plik.asp odnosi się do adresu http://www.example.com/plik.asp, ale nie do adresu http://www.example.com/Plik.asp.

W plikach robots.txt używane są te dyrektywy:

  • User-agent: (klient użytkownika) [w regule wymagany jest co najmniej jeden] to nazwa robota wyszukiwarki, czyli oprogramowania indeksującego, którego dotyczy dana reguła. Jest to pierwszy wiersz każdej reguły. Większość nazw klientów użytkownika znajduje się w bazie danych robotów lub na liście klientów użytkownika Google. Obsługuje symbol wieloznaczny * zastępujący prefiks, sufiks lub całą ścieżkę. Użycie gwiazdki (*) jak w poniższym przykładzie spowoduje, że reguła będzie się odnosiła do wszystkich robotów z wyjątkiem różnych robotów AdsBot, które należy nazwać wyraźnie. Zobacz listę nazw robotów Google. Przykłady:
    # Przykład 1: blokowanie tylko Googlebota
    User-agent: Googlebot
    Disallow: /
    
    # Przykład 2: blokowanie robotów Googlebot i Adsbot
    User-agent: Googlebot
    User-agent: AdsBot-Google
    Disallow: /
     
    # Przykład 3: blokowanie wszystkich robotów poza AdsBot
    User-agent: * 
    Disallow: /
  • Disallow: (czyli brak pozwolenia) [w regule wymagany jest co najmniej jeden 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, a w przypadku katalogu nazwa powinna się kończyć znakiem / (prawym ukośnikiem).  Obsługuje symbol wieloznaczny * zastępujący prefiks, sufiks lub całą ścieżkę.
  • Allow: (czyli pozwolenie) [w regule wymagany jest co najmniej jeden wpis Disallow lub Allow] katalog lub strona domeny głównej, które powinny być indeksowane przez wspomnianego klienta użytkownika. „Allow” pozwala zastąpić instrukcję „Disallow”, by zezwolić na indeksowanie podkatalogów lub stron zlokalizowanych w katalogu, dla którego ustawiono instrukcję „Disallow”. W przypadku strony należy podać jej pełną nazwę widoczną w przeglądarce, a w przypadku katalogu nazwa powinna się kończyć znakiem / (prawym ukośnikiem). Obsługuje symbol wieloznaczny * zastępujący prefiks, sufiks lub całą ścieżkę.
  • Sitemap: (czyli mapa witryny) [element opcjonalny, niewymagany w pliku] lokalizacja 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, by wskazać robotowi Google treści, które powinien indeksować, oraz te, które może lub których nie może indeksować. Dowiedz się więcej informacji o mapach witryny. Przykład:
    Sitemap: https://example.com/sitemap.xml
    Sitemap: http://www.example.com/sitemap.xml

Nieznane słowa kluczowe są ignorowane.

Kolejny plik przykładowy

Plik robots.txt składa się z jednego lub kilku zestawów reguł, gdzie każda reguła zaczyna się od wiersza User-agent określającego element, którego dotyczy. Oto plik zawierający dwie reguły, które zostały opisane w komentarzach:

# Blokuj googlebotowi dostęp do katalogu example.com/katalog1/... i example.com/katalog2/...
# ale zezwalaj na dostęp do podkatalogu katalog2/podkatalog1/...
# Wszystkie pozostałe katalogi w witrynie są dostępne domyślnie.
User-agent: googlebot
Disallow: /katalog1/
Disallow: /katalog2/
Allow: /katalog2/podkatalog1/

# Blokuj robotowi innyrobot dostęp do całej witryny.
User-agent: innyrobot
Disallow: /

Pełna składnia pliku robots.txt

Pełną składnię pliku robots.txt znajdziesz tutaj. Zapoznaj się z całą dokumentacją, ponieważ składnia pliku robots.txt obejmuje kilka skomplikowanych elementów, które trzeba opanować.

Przydatne reguły pliku robots.txt

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

Reguła Przykład
Zakaz pobierania całej witryny. Pamiętaj, że w niektórych sytuacjach adresy URL z witryny wciąż mogą być indeksowane, nawet gdy nie zostały pobrane. Uwaga: nie dotyczy to różnych robotów AdsBot, które należy wyraźnie wskazać.
User-agent: *
Disallow: /
Zakaz pobierania katalogu i jego zawartości – wpisz nazwę katalogu i ukośnik. Pamiętaj, by nie używać pliku robots.txt do blokowania dostępu do treści prywatnych – zamiast tego zastosuj odpowiednie uwierzytelnianie. Adresy URL zabronione w pliku robots.txt wciąż mogą być indeksowane bez pobierania, a plik robots.txt jest publicznie dostępny i może spowodować ujawnienie lokalizacji treści prywatnych.
User-agent: *
Disallow: /kalendarz/
Disallow: /śmieci/
Zezwolenie na dostęp jednemu robotowi
User-agent: Googlebot-news
Allow: /

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

User-agent: *
Allow: /

Zakaz pobierania jednej strony internetowej wskazanej po ukośniku:

Disallow: /plik_prywatny.html

Zakaz dostępu do konkretnego obrazu w Grafice Google:

User-agent: Googlebot-Image
Disallow: /obrazy/psy.jpg

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

User-agent: Googlebot-Image
Disallow: /

Zakaz indeksowania plików określonego typu (np. .gif):

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

Zakaz pobierania całej witryny, ale z zezwoleniem na wyświetlanie reklam AdSense na jej stronach – zablokuj dostęp wszystkim robotom oprócz Mediapartners-Google. Strony nie będą widoczne w wynikach wyszukiwania, ale robot Mediapartners-Google wciąż będzie mógł je analizować, by wybrać reklamy do wyświetlenia użytkownikom witryny.

User-agent: *
Disallow: /

User-agent: Mediapartners-Google
Allow: /
Dopasowywanie adresów URL, które kończą się określonym ciągiem – użyj znaku $. Kod w przykładzie blokuje adresy URL z końcówką .xls:
User-agent: Googlebot
Disallow: /*.xls$
Czy ten artykuł był pomocny?
Jak możemy ją poprawić?