Dostosowanie strony internetowej do wytycznych Google to jedna z podstawowych kwestii, jakie powinien brać pod uwagę właściciel serwisu www. Udostępnianie całej zawartości witryny dla robotów wyszukiwarki nieodłącznie wiąże się z plikiem robots.txt i dyrektywami blokującymi w nim zawartymi.
Utworzenie pliku
Aby utworzyć plik robots.txt konieczny jest dostęp do katalogu głównego (najczęściej public_html) interesującej nas strony. Alternatywnymi wariantami są zabezpieczenia zawartości w postaci hasła lub też zastosowanie odpowiednich metatagów w sekcji head kodu strony.
Podstawowe dyrektywy
Standardowy i zarazem defaultowy plik robots.txt wygląda następująco:
- User-agent: *
- Disallow:
Oznacza to, że udostępniamy wszystkim robotom crawlującym i indeksującym całą zawartość strony.
Dyrektywy w robots.txt:
- User-agent: [dokładna nazwa robota, którego ma dotyczyć dyrektywa]
W przypadku wstawienia znaku * wprowadzona przez nas dyrektywa Allow/Disallow w pliku robots.txt ma dotyczyć wszystkich robotów.
- Allow: [wprowadzamy dział lub sektor, którego dyrektywa blokująca Disallow ma nie dotyczyć]
Stosuje się do rozbudowania standardowej składni robots.txt celem odblokowania zasobów serwisu dla robota lub robotów.
- Disallow: [blokowanie konkretnej zadanej przez nas zawartości witryny]
Dyrektywa „/” blokuje całą zawartość witryny dla wcześniej wymienionych robotów indeksujących. Stosuje się ją w przypadku np. prac dla wersji testowej, blokowania konkretnych niechcianych zasobów w obrębie serwisu.
Uwaga:
- Zwracajmy uwagę na wielkość liter w dyrektywach, które mają znaczenie dla robotów.
- Googleboty (roboty wyszukiwarki Google) nie zwracają uwagi na zastosowane w pliku robots.txt znaki odstępu czy też instrukcje niepowiązane w żaden sposób z powyższymi dyrektywami.
Przykłady zastosowania dyrektyw:
- Dla plików graficznych z rozszerzeniem .jpg
User-agent: Googlebot Disallow: /*.jpg$
Powyższa dyrektywa blokuje dla robotów Google dostęp do wszystkich plików graficznych z rozszerzeniem .jpg.
- Dla całego katalogu
User-agent: Googlebot Disallow: /prywatny/
Dyrektywa blokująca zawartość katalogu /prywatny/ dla robotów Google.
- Dla konkretnego adresu katalogu
User-agent: Googlebot Disallow: /prywatny/$
Dyrektywa blokująca adres katalogu /prywatny/ dla robotów Google. Znak $ oznacza, że ma być zastosowana dyrektywa tylko dla tego adresu, a nie całej zawartości katalogu.
- Dla konkretnego adresu
User-agent: Googlebot Disallow: /prywatny_plik.html
Dyrektywa blokująca adres /prywatny_plik.html dla robotów Google.
Często popełnianie błędy przy tworzeniu dyrektyw
- Spójność struktury adresów url – powinniśmy zwrócić uwagę, czy adresy w obrębie naszego serwisu posiadają na końcu „/”, czy też są go pozbawione. Postawienie na jednolitą i stałą konstrukcję uczyni plik robots.txt bardziej przejrzystym.
- Daty w adresach url – sprawiają, że składnie adresów są nieintuicyjne i w przypadku umieszczenia ich w dużej ilości zarządzanie plikiem robots.txt może być nieefektywne oraz czasochłonne.
- Blokowanie wartościowych zasobów – nieumiejętne wprowadzanie dyrektyw blokujących w robots.txt może spowodować zablokowanie wartościowych dla nas zasobów serwisu (dotyczy to zarówno konkretnych adresów, jak i obrazów oraz plików CSS/JS). Przed zastosowaniem konkretnych reguł polecane jest skorzystanie z narzędzi testujących działanie zastosowanych składni w robots.txt.
- Duże litery – problem dotyczy zarówno nazywania pliku np. ROBOTS.txt, jak i naprzemiennie dużych i małych liter w adresach dla dyrektyw blokujących. Należy pamiętać, że roboty wyszukiwarek rozróżniają z reguły wielkość liter.
- Subdomeny – często spotykanym błędem jest brak umieszczenia pliku robots.txt w katalogach subdomen. Pamiętajmy, że subdomeny należy traktować jako osobne serwisy.
- Przejrzystość pliku – błędną praktyką jest stosowanie dyrektyw Allow/Disallow w jednej linii. Co prawda puste znaki ignorowane są chociażby przez Googlebota, jednakże plik robots.txt staje się mało przejrzysty.
- Blokada robotów – robots.txt nie stanowi efektywnego zabezpieczenia chociażby przed spambotami, które najczęściej ignorują jego zawartość. Ze względu również na ilość robotów spamujących zaleca się stosowanie innych form blokady zawartości, jak chociażby dyrektywy w pliku .htaccesss. Należy też brać pod uwagę, że skuteczniejszą i szybszą metodą na wyindeksowanie konkretnych zasobów jest zastosowanie odpowiedniego meta-tagu, który umieszczamy w sekcji <head> w kodzie źródłowym:
<meta name="robots" content="noindex">
Przykładowe narzędzia do testowania zawartości pliku robots.txt.
Tester TechnicalSeo
https://technicalseo.com/seo-tools/robots-txt/ – narzędzie testuje działanie dyrektywy dla dowolnie wybranego adresu, pozwala na przetestowanie dyrektyw przed ich wprowadzeniem.
Robots.txt Tester w Google Search Console
https://www.google.com/webmasters/tools/robots-testing-tool – tester wprowadzonych dyrektyw dla zweryfikowanej w Narzędziach Google dla Webmasterów witryny.
Podsumowanie
Należy pamiętać, że do stworzenia konkretnych dyrektyw blokujących zasoby serwisu konieczny jest dostęp do katalogu głównego serwisu.
Przy zaimplementowaniu odpowiednich dyrektyw zwracajmy szczególną uwagę na ich zawartość, gdyż poprzez zwykłe niedopatrzenie lub błąd możemy zablokować robotom dostęp do ważnych dla nas podstron.
Pingback: Findability – jak łatwo zostać znalezionym? Cz. 2 - DigitalHill.pl