Maciej Janas

Robots.txt: czego nie robić? Steruj Googlebotem jak chcesz!

Istnieją w internecie popularne witryny, z olbrzymią liczbą linków przychodzących, których podstrony są blokowane na poziomie pliku robots.txt przed robotami wyszukiwarek, wyrządzając ich pozycjonowaniu dużą krzywdę. Czy twoja witryna także ma błędy w robots.txt? Z poniższego tekstu dowiesz się jak roboty wyszukiwarek traktują zablokowane w robots.txt pliki, pośmiejesz się z webmasterów znanych witryn i popełnionych przez nich błędów oraz dowiesz się, jak samemu takich błędów nie popełnić.


Ustanowiony w 1994 roku protokół Robots Exclusion Protocol, używany m.in. w plikach robots.txt miał służyć webmasterom do określania, które pliki lub katalogi witryny udostępniać robotom wyszukiwarek, a które nie. Roboty większości wyszukiwarek wciąż w istocie słuchają zawartych tam poleceń, ale tylko do pewnego stopnia.

Wykluczone podstrony widoczne w SERP-ach

Nawet te boty, które generalnie są posłuszne poleceniom z plików robots.tst (roboty Google’a i innych dużych wyszukiwarek), choć nie zaindeksują treści wykluczonej podstrony, mogą i tak umieścić ją w indeksie. Wszyscy widujemy takie „cząstkowe” linki w wynikach wyszukiwania. Poniżej dwa przykłady podstron, które wykluczono z indeksu na poziomie pliku robots.txt, a które mimo to widoczne są w Google.

Strona logowania Cisco

Zaznaczona na poniższym zrzucie podstrona logowania witryny Cisco została zablokowana w robots.txt, a mimo to Google wyświetla jej okrojony link na drugiej stronie wyników dla zapytania „login”. Na liście wyników widać zarówno URL podstrony, jak i jej tag [title]. Brakuje za to treści metatagu [description] lub fragmentu tekstu z podstrony.

niezaindeksowana a widoczna w SERP-ach podstrona logowania Cisco

Strona „next blog” WordPress.com

Jedną z najpopularniejszych podstron witryny WordPress.com jest www.wordpress.com/next. Podstrona ta jest zablokowana w robots.txt, a mimo to pojawia się w Google na czwartym miejscu dla zapytania „next blog”.

podstrona wycięta w robots.txt, a mimo to widoczna w SERP-ach

Jak widzisz, umieszczenie podstrony w pliku robots.txt nie wystarczy by powstrzymać Google’a przed wyświetleniem jej na liście wyników.

Robots.txt może marnotrawić przychodzący link-juice

Probelm z plikiem robots.txt jest taki, że nie tylko pozostaje on nieefektywny w blokowaniu indeksacji podstron, ale może przyczyniać się do marnowania pageranku płynącego do naszej witryny.

Kiedy zablokujesz indeksowanie podstrony w pliku robots.txt, wyszukiwarki nie zaindeksują treści, W TYM LINKÓW, z tej podstrony. Oznacza to, że jeśli do podstrony przychodzą jakieś linki, to idący za nimi link juice nie przepłynie już dalej, utknie. Tworzysz ślepą uliczkę.

Googlebot tłumaczy niemożność przekazania link juice z podstrony wykluczonej w robots.txt

(jeśli powyższy obrazek wygląda znajomo, to dlatego, że w istocie widziałeś go już wcześniej. Dzięki, Rand!)

Oczywiście linki przychodzące do zablokowanej podstrony przyniosą pewne korzyści całej witrynie, jednak ich potencjał nie zostanie wykorzystany w całości. Tracisz w ten sposób możliwość przekazywania pageranku z zablokowanej podstrony do innych, ważniejszych podstron witryny.

3 duże witryny marnujące PageRank

Przeszukałam internet na okoliczność najbardziej zawstydzających wpadek. Wzięłam listę Top 500 SEOmozu i wycelowałam ostrze OpenSiteExplorera w witrynę Digg.com i listę jej podstron, do których linkuje najwięcej unikalnych domen. Wyniki są dosyć przerażające:

podstrony digg.com zbierające najwięcej linków z unikalnych domen. 4 z 5 najpopularniejszych podstron zablokowane!

(Hej, tam w Diggu! Marnujecie mnóstwo link juice!)

Tak doszliśmy do pierwszego poważnego przypadku błędnego użycia robots.txt.

#1 – Digg.com

Blokując z poziomu robots.txt dostęp robotów do podstrony, do której prowadzi kosmiczna liczba 425 tysięcy linków z unikalnych domen („Submit to Digg„), Digg.com zrobił sobie tak wielką krzywdę, jak tylko można sobie wyobrazić.

podstrona

Co mogę powiedzieć dobrego o Diggu, to że między znalezieniem przeze mnie błędów a chwilą pisania tego artykułu, większość problematycznych wpisów zniknęła z pliku robots.txt. Ponieważ nie można już obejrzeć tego „na żywo”, poniżej zamieszczam zrzut zawierającej błąd wersji diggowego pliku robots.txt, a także listę zaindeksowanych w Google plików z katalogu digg.com/submit:

zrzut pliku robots.txt zawierający błąd

Jak widać poniżej, Google nie zaindeksował do tej pory blokowanej jeszcze niedawno treści:

Googlowa lista podstron z katalogu digg.com/submit

Na miejscu ludzi z Digga spodziewałbym się, że po zdjęciu z robots.txt blokady ich najczęściej linkowanych podstron, nastąpi lawinowy wzrost ruchu. Żeby nie zapełniać SERP-ów podstronami ze zbędną treścią, w Diggu powinni wyłączyć je z indeksu za pomocą metatagu „noindex”, umieszczanego w robots.txt. Tylko takie działanie zagwarantuje nieblokowanie przepływu link juice przy jednoczesnym powstrzymaniu Google’a przed wyświetlaniem stosownych podstron w wynikach wyszukiwania.

Jeśli nie jesteś mocny w używaniu „noindex”, wystarczy, że zamieścisz poniższy metatag w sekcji [head] stosownej podstrony.

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

Dodając do tagu wartość „follow” mówisz botom by nie indeksowały danej podstrony, ale podążały za zamieszczonymi na niej linkami. W typowych przypadkach jest to rozwiązanie zalecane, ponieważ nie blokuje przepływu link juice do innych podstron witryny. Weźmy jako przykład podstronę wyników wyszukiwania zawierającą linki paginacji. Prawdopodobnie nie chcesz by taka podstrona wyświetlana była w wynikach wyszukiwania, bo treść kolejnych stron wyników będzie się codziennie zmieniać. Jeśli użyjesz metatagu noindex, follow, wyszukiwarka będzie podążać za zamieszczonymi na podstronie listy wyników linkami i zapewne będzie je indeksować.

Możesz także użyć „noindex, nofollow”, ale trudno znaleźć cel takiego działania, jest ono w istocie równoznaczne z opisywaną powyżej blokadą link juice z poziomu robots.txt.

#2 – Blogger.com & Blogspot.com

Należące do Google serwisy blogowe Blogger i Blogspot pokazują, że każdy ma coś, co może poprawić. Sposób, w jaki witryny te są ze sobą połączone nie mieści się w dobrych praktykach, co powoduje spore straty w link juice.

gówna strona Bloggera

Blogger to marka Googlowej platformy blogowej, hostująca blogi w domenie blogspot.com. Problem z blokowaniem link juice i plikiem robots.txt tego serwisu jest taki, że robots.txt całkowicie blokuje subdomenę www.blogspot.com. Gdyby tego było mało, próba odwiedzenia głównej strony Blogspota kończy się przekierowaniem 302 do Blogger.com.

Uwaga: wszystkie inne subdomeny, poza „www”, są dla robotów dostępne.

Lepszym rozwiązaniem byłoby tutaj proste przekierowanie 301 z głównej strony Blogspot.com do głównego landing page Blogger.com. Wpis w robots.txt powinien zostać zatem całkowicie usunięty. Tak niewielka zmiana odblokuje ukrytą moc ponad 4600 unikalnych domen linkujących do tego serwisu. To naprawdę sporo linków.

#3 – IBM

IBM z kolei blokuje w robots.txt podstronę, do której prowadzi 1001 linków z unikalnych domen. Szczerze mówiąc, podstrona ta nie tylko jest blokowana na poziomie robots.txt, ale także rozpoczyna trzykrotne przekierowanie 302 do innej witryny – zobacz poniżej:

przekierowanie na jednej z podstron witryny IBM

Kiedy popularna podstrona zostaje skasowana lub przeniesiona, zwykle najlepszym rozwiązaniem jest ustawienie przekierowania 301 prowadzącego do najlepiej zastępującej ją treści.

Robots.txt – dobre praktyki

Na wspomnianych powyżej przykładach dużych, znanych witryn omówiliśmy kilka typowych błędów popełnianych w pliku robots.txt i sposoby ich omijania. Jednak nie wszystkie. Poniżej lista sposobów na powstrzymanie indeksowania wybranych podstron bez marnotrawstwa link juice.

Noindex

W większości przypadków najlepszą alternatywą dla wykluczenia podstron na poziomie robots.txt jest meta tag robots. Użycie meta tagu robots o wartości „noindex”, ALE NIE „nofollow”, zagwarantuje, że podstrona będzie nieobecna w wynikach wyszukiwania, ale wciąż będzie przekazywać link juice. Mieć ciastko i zjeść ciastko :-).

301 Redirect

Robots.txt nie jest właściwym miejscem do wymieniania niepotrzebnych, nieważnych podstron. Jeśli podstrona nie istnieje (została skasowana lub przeniesiona), nie poprzestawaj na zablokowaniu jej. Ustaw z niej przekierowanie 301 do innej podstrony, najlepiej odpowiadającej oczekiwaniom internautów. Więcej informacji o przekierowaniach znajdziesz w Knowledge Center Seomoz.org.

Rel=canonical

Nie blokuj zduplikowanych wersji swoich podstron w robots.txt. Jeśli użyjesz rel=canonical, wyrzucisz nadmiarowe wersje z indeksu, a jednocześnie skonsolidujesz link juice wszystkich wersji duplikatów. Stosuj tę metodę gdzie tylko będzie to możliwe. Więcej informacji o kanonikalizacji i poprawnym używaniu rel=canonical znajdziesz w Knowledge Center.

Zabezpieczenie hasłem

Jeśli chcesz zabezpieczyć część treści twojej witryny przed oczyma osób niepowołanych, robots.txt nie jest do tego efektywnym narzędziem. Jeśli publikujesz poufne informacje, zabezpiecz dostęp do nich hasłem. Jeśli w związku z tym stworzysz podstronę logowania, dodaj do niej metatag „noindex”. Jeśli podejrzewasz, że taka podstrona może zgromadzić wiele linków przychodzących, pamiętaj by zalinkować z niej do innych, ważnych podstron twojej witryny. Dzięki temu przekażesz im link juice.

Jak efektywnie używać Robots.txt

Najlepszą radą dotyczącą używania pliku robots.txt jest nieużywanie go w ogóle. No, prawie w ogóle. Używaj go do zaznaczenia, że roboty mają pełny dostęp do wszystkich plików witryny, a także do wskazania robotom pliku z XML-ową mapą witryny. I to wszystko.

Twój plik robots.txt powinien wyglądać jak następuje:

—————–

User-agent: *
Disallow:

Sitemap:

—————–

Złe boty

Na początku tego tekstu wspomniałam, że „Roboty większości wyszukiwarek wciąż w istocie słuchają zawartych tym poleceń (…)”, co oznacza, że istnieją roboty, które nic sobie z poleceń zawartych w robots.txt nie robią. Za pomocą pliku robots.txt możesz więc sterować „dobrymi” robotami, ale jednocześnie ponosić klęskę w zakresie sterowania „złymi” robotami. Od razu zastrzegam, że dopuszczanie do witryny wyłącznie robotów Google’a i Binga nie jest dobrym pomysłem, i to z trzech powodów:

  • Wyszukiwarki często zmieniają/aktualizują nazwy swoich robotów (np. zmieniono ostatnio nazwę bota Binga),
  • wyszukiwarki „wypuszczają” w internet różne rodzaje robotów do różnych typów treści (np. obrazki, wideo, treści mobilne itd.),
  • nie dajesz szans nowym wyszukiwarkom (np. Blekko, Yandex), podczas gdy branża wyszukiwarek potrzebuje więcej konkurencji.

Konkurenci

Jeśli twoi konkurenci są elementarnie biegli w pozycjonowaniu, z całą pewnością sprawdzają twój plik robots.txt, zastanawiając się, co mogą z niego wywnioskować by zyskać nad tobą przewagę. Wyobraźmy sobie przykładowo, że twoja firma pracuje nad redesignem witryny lub nad nową linią produktów, stosowne podstrony już istnieją, ale postanowiłeś zabronić robotom indeksowania ich poprzez umieszczenie ich w „Disallow” w robots.txt. Jeśli twój konkurent przyjdzie, zajrzy do robotsów i ujrzy tam zablokowany katalog o nazwie /nowy-produkt-test, to właśnie zyskał nad tobą sporą przewagę. Lepiej trzymaj takie rzeczy za ekranem logowania. Nie rozgaduj w pliku robots.txt wszystkich swoich sekretów.

Obsługa elementów nie-HTML i systemowych

  • Blokowanie z robots.txt dostępu robotów do plików .js i .css nie jest niezbędne. Wyszukiwarki i tak ich nie zaindeksują, czasem natomiast chcą uzyskać w nie wgląd. Żeby się nie narażać, lepiej daj im ten wgląd,
  • Jeśli chcesz uniemożliwić robotom dostęp do dokumentów w formatach innych niż HTML (np. PDF), lepiej użyj tagu x-robots w nagłówku HTTP (Dziękuję Billowi Nordwallowi za podpowiedzenie tej możliwości!),
  • Obrazki! Każda witryna używa teł obrazkowych lub obrazków używanych do ostylowywania witryny, które nie powinny być indeksowane. Pamiętaj, że kiedy tylko jest to możliwe, takie obrazki powinny być wyświetlane za pośrednictwem CSS, a nie tagu [img]. To pozwoli powstrzymać roboty przed indeksowaniem ich.
  • Sprawdź w logach witryny, czy boty w ogóle próbują uzyskiwać dostęp do nie-HTML-owych plików twojej witryny. Być może nie ma się czym martwić.

Lektury dodatkowe

O błędach w robots.txt pisali już m.in. Rand Fishkin i Andy Beard. Zwróć jednak uwagę na datę publikacji ich artykułów; oba były pisane jeszcze w czasach wewnętrznego PageRank sculptingu robionego za pomocą atrybutu nofollow. Innymi słowy, w szczegółach oba artykuły mogą być momentami nieaktualne, natomiast ogólne przedstawione w nich zasady pozostają niezmienne.

Rand Fishkin: Don’t Accidentally Block Link Juice with Robots.txt
Andy Beard: SEO Linking Gotchas Even the Pros Make

Dobry robots.txt w 6 krokach

  • Weź plik robots.txt swojej witryny. Jeśli zabraniasz w nim dostępu („Disallow”) do czegokolwiek, czytaj dalej.
  • Sprawdź w Open Site Explorerze zakładkę „Top Pages” by zobaczyć podstrony twojej witryny, do których prowadzi najwięcej linków z unikalnych domen i by zorientować się rozmiarach „marnotrawstwa page ranku”. Dzięki temu zyskasz pogląd jak wysoko umieścić kwestię robots.txt na liście twoich priorytetów.
  • Do nagłówków podstron, które chciałbyś wyrzucić z indeksu wyszukiwarek dodaj metatag „noindex”.
  • Ustaw przekierowanie 301 ze skasowanych/przeniesionych podstron, które blokowałeś dotąd w robots.txt.
  • Dodaj tag rel=canonical do nagłówków podstron będacych duplikatami, które blokowałeś dotąd w robots.txt.
  • Patrz jak rośnie ruch z wyszukiwarek!

Przyjemnego optymalizowania!

[źródło: Serious Robots.txt Misuse & High Impact Solutions]

czytaj także

Hostingi SEO i znaczenie adresów IP w zapleczu – Dominik Wojcik

Maciej Janas

O autorze

Maciej Janas

Od 2004 w poznańskich agencjach interaktywnych (UX, copy), od lutego 2010 do grudnia 2012 redaktor serwisu SprawnyMarketing.pl. Lubi tropić i opisyw...

zobacz więcej artykułów >>

Zostaw komentarz

  1. Redakcja

    Przypominamy, że wielkimi krokami zbliża się konferencja I ♥ Marketing & Technology, która odbędzie się już 16–18 kwietnia 2024 roku oraz organizowane przez nas 33 szkolenia z zakresu marketingu.

    Jeśli chcesz być zawsze na bieżąco, zamów prenumeratę magazynu sprawny.marketing!

    Z kolei jeśli chcesz mieć dostęp do całej wiedzy sprawny.marketing w jednym miejscu, subskrybuj platformę premium.sprawny.marketing.

  2. Czy dobrze zrozumiałem? Jeśli nie chcemy przekazywać PR danej stronie i nie chcemy by była zaindeksowana to w robots.txt powinniśmy ustawić jednocześnie Disallow i Noindex?

  3. Sebastian Jakubiec

    W pliku robots można dać Disallow, w bezpośrednim pliku HTML NoIndex. NoIndex w pliku HTML, w sekcji HEAD oznacza nie indeksowanie ale nie ma nofollow czyli moc jest przekazywana.

    W przypadku Robots wykluczasz plik z indeksacji, czyli to w skrócie jak byś umieścił jednocześnie noindex i nofollow za jednym zamachem. Juice przychodzi, jednak nie wychodzi do pozostałych podstron witryny.

    BTW. artykuł ma drobne błędy literowe: "Probelm", warto poprawić w wolnej chwili.

  4. jak dobrze pamiętam to link juice jest tym samym co PR. Trzymajmy się zatem standardów.

  5. Naturalis

    No właśnie, do tego nawiązałem w komentarzu tutaj „ja rozumiem, że Link Juice to tylko takie określenie soczku z PR” – https://www.sprawnymarketing.pl/artykuly/przewodnik-po-relcanonical-jak-uniknac-duplicate-content/#comment-46426

  6. YOUCANWAKE

    google stale próbuje zaindeksować podstrony z plikami których nie ma
    wp-content/themes/Infinity-theme/theme/images/460REMOTE.swf

    nie wystarcza jak wpiszę w robots.txt

    User-agent: *
    Disallow: /images/GOPRO460.swf
    Disallow: /images/460SLINGSHOT.swf
    Disallow: /images/460REMOTE.swf
    Allow: /

    coś źle zapisałem czy co?

  7. Mariusz Zakrzewski

    link juice jak niedawno juice w potocznym, gość wymyślił a ludzie jak gąbki chłoną to co 'modne’ i 'oryginalne’ na ten czas. Problem jest jak zaczyna to być pospolite i staje się denerwujące. Nic innego jak wartość strony.

    Sebastian Jakubiec – czepiasz się Pan. Ty za to masz stronę postawioną na darmowym serwerze republika onetu. Co gorsze literówka czy strona na darmowym serwerze?
    Każdy ma drobne błędy – ja też.

    Tak jak wspomniane wyżej, często duże firmy mają źle zastosowany robot.txt – wystarczy przelecieć czołowe porównywarki.

    Dobry art do poczytania na ten temat tutaj: http://blog.performancemedia.pl/seo/niewlasciwe-stosowanie-pliku-robots-txt-i-dobre-rozwiazania

  8. A ja właśnie u siebie odkryłem ciekawostkę, G. zaindeksowało mi plik robots.txt mojego serwisu :0, i co z tym fantem zrobić?

  9. GrzegorzAdamiec

    A dlaczego nie skorzystać z wszystkich metod do blokowania podstron, na których blokadzie nam zależy? Nie wiem czemu ktoś miałby chcieć indeksować podstrony logowań, rejestracji, regulaminów, polityki prywatności itp. no ale … Kolejna sprawa to, jak skutecznie zablokować dokumenty pdf, doc itp. na których czasem zachodzi potrzeba zamieszczenia masy linków wychodzących? Według mnie pozostaje tylko robots.txt. Ostatnio robiłem test. Udostępniłem ludziom listę linków TR w dokumencie pdf, z podstrony prowadził link nofollow do tej listy. Efekt? nie przeszkodziło to Googlowi w jego indeksacji. Obecnie ustawiłem temu linkowi noindex,nofollow oraz zablokowałem w robots.txt sam dokument. Ciekawi mnie, czy zniknie z indeksu Google, a jeśli tak to po jakim czasie :)

  10. Człowiek Remont

    Ja blokuję w robotsach przez deny na url i bot nie chodzi i nie indexuje tych linków. Natomiast dobrze wiem, że samo „nofollow” w hrefach nie blokuje robota przed odwiedzeniem strony i nawet zaindeksowaniem. Po prostu ten atrybut nie jest dla robotów „rozkazem”

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Wpisz imię
Napisz komentarz