Każdy, kto korzysta z Internetu, na pewno napotkał na swojej drodze kod błędu „404 – nie znaleziono”. Pojawia się on najczęściej w momencie, kiedy dana podstrona jest niedostępna lub została usunięta. Ten kod stanu protokołu, jest jednym z najczęściej spotykanych, a zarazem jednym z kilkudziesięciu używanych do zarządzania i śledzenia komunikacji klient-serwer. Te kody statusu HTTP mogą znacząco wpływać na wyniki organiczne pojawiające się w wyszukiwarce Google, a zarazem na widoczność Twojej strony internetowej. Dlatego tak ważne jest, aby je poznać i mieć nad nimi kontrolę.
Czym są kody odpowiedzi HTTP?
HTTP to skrót od Hypertext Transfer Protocol. To protokół, który został stworzony między innymi do komunikacji przeglądarek z serwerami webowymi. Działanie protokołu opiera się na żądaniu wysyłanym przez klienta i oczekiwaniu na odpowiedź serwera (model klient-serwer). Kod odpowiedzi HTTP zwraca różne liczby, które wymagają interpretacji i oznaczają zazwyczaj albo konkretne błędy w zakresie komunikacji z serwerem, albo są oznaką poprawnie działającej podstrony. Poniżej opisuję najpopularniejsze kody błędów, które mają znaczenie dla procesu pozycjonowania, a na które należy zwrócić należytą uwagę.
Status kodu HTTP 2xx
Klasa kodów rozpoczynających się od 2… czyli np. 200 oznacza, że nadana przez użytkownika akcja, została odebrana przez serwer, zrozumiana oraz zaakceptowana. Skutkuje to po prostu pojawianiem się żadnej strony internetowej, wyświetlanej w standardowej formie. Czyli jest to każda podstrona, która pojawi Ci się w poprawnej wersji. 200 OK to standardowa odpowiedź serwera. W większości przypadków, kod 200 (którego jako użytkownik realnie nie widzisz), jest uznawany za poprawny i właściwy.
Inne, może mniej popularne statusy kodu 2xx, to np. 201, 202, 203… Kod statusu 202 oznacza na przykład, że zapytanie zostało przyjęte przez serwer, ale jest w trakcie realizacji. 204 natomiast sygnalizuje, że strona otrzymała poprawny status, jednak nie znaleziono na niej jakiejkolwiek treści. Co nie jest błędem samym w sobie, ale jeśli realizujesz optymalizację i starasz się o jak najlepsze wyniki wyszukiwalności, na pewno taka podstrona nie zyska aprobaty Googlebota.
Status kodu 200 jest niezwykle ważny dla SEO, ponieważ oznacza, że wszystko z konkretnym linkiem jest OK. W teorii, 200 oznacza, że Googlebot może z powodzeniem zaindeksować treść, która znajduje się na podstronie, co skutkuje wyświetleniem jej w wynikach wyszukiwania. W praktyce jednak Google dzięki statusowi 200 przyznaje jedynie, że podstrona nadaje się do indeksacji i nie zawiera błędów w zakresie komunikacji z serwerem, ale nie gwarantuje jej to ciepłego miejsca w indeksie (na to coraz częściej trzeba swoje odczekać).
Status kodu HTTP 3xx
Kody rozpoczynające się od 3xx, wskazują przekierowanie. Status 3xx jest podzielony na 8 kodów, poczynając od najważniejszego dla SEO – 301, oraz kolejnego 302, a następnie 303, 304, itd. Kody 3xx wskazują użytkownikowi, że cel został przeniesiony w inne miejsce, na inną podstronę. Kod 301 wskazuje Googlebotowi, że ma podążać za wskazanym adresem, z dużym prawdopodobieństwem go później indeksując. Kody statusów 302 i 303 wskazują „słabsze” przekierowania, tymczasowe, które zazwyczaj lub w większości się nie indeksują.
Zbyt duża ilość przekierowań 301, może spowodować pętlę, którą robot Google zignoruje i w związku z tym z dużą pewnością wyświetli błąd (np. na podstronie, której on dotyczy). Przekierowanie 301 jest niezwykle ważnym statusem dla SEO. Jeśli usuwamy jakąś podstronę lub zmieniamy jej cel, musimy skorzystać z tej opcji, chcąc aby efekty pozycjonowania nie zostały utracone. Opcję tę również stosujemy, kiedy zmieniamy strukturę adresów URL (np. zmieniamy nazwę katalogu domena.pl/przykladowa-podstrona/ na domena.pl/podstrona-pierwsza/) – w takim wypadku „stary” adres przekierowujemy metodą 301 na ten nowy. Dzięki temu, użytkownik który znajdzie się na „starym adresie”, zostanie automatycznie przeniesiony na ten drugi. Po czasie również w indeksie drugi adres zastąpi ten pierwszy. W jakich innych przypadkach można użyć przekierowania 301?
- przejście z adresu HTTP na HTTPS dla całej domeny (wszystkich linków) – instalacja certyfikatu SSL,
- przeniesienie się na inną domenę – w takim wypadku również przekierowujemy stary adres na ten nowy,
- optymalizacja struktury adresów URL oraz poszczególnych nazw katalogów, gdzie stare wersje linków należy przekierować na te świeże,
- zmiana lub aktualizacja CMSa, kiedy wszystkie adresy URL katalogów wymieniają się, np. domena.pl/podstrona.html na domena.pl/podstrona/.
Przekierowanie 302 oznacza tymczasowe działanie, które przekierowuje użytkowników na inną podstronę tylko przez określony czas, dopóki np. nie zostanie usunięta lub zmieniona. Stosowane jest również w momencie, kiedy prowadzimy prace modernizacyjne na serwisie, aktualizujemy lub przebudowujemy jakąś podstronę i nie chcemy, aby użytkownicy nie natknęli się na niepełną wersję.
Status kodu HTTP 4xx
Kody rozpoczynające się od 4xx to tzw. „Client Error Codes” lub „File/page not found“. Gdy serwer nie może uzyskać dostępu do strony, wysyła jeden z kodów 4xx. W przypadku wystąpienia takiego kodu, informacja pojawia się na ekranie. W skrócie, kody te oznaczają, że klient nie może odczytać jakiejkolwiek treści.
Kody 4xx bardzo utrudniają działania SEO. Często stosuje się je umyślnie i w sposób zaplanowany. Adresy zwracające kody 4xx nie będą indeksowane w wyszukiwarce. Natomiast te, które zostały już zaindeksowane, są z niego usuwane. Google traktuje strony z kodami błędu 4xx tak, jakby nie istniały.
Najpopularniejszym błędem, na który należy zwrócić szczególną uwagę w kontekście SEO, jest kod błędu 404. Pojawia się wtedy, kiedy serwer nie może znaleźć jakiejkolwiek treści w momencie żądania (akcji wykonanej przez użytkownika). Również wtedy, gdy nie podano informacji, odnośnie tego czy stan ten jest czasowy, czy stały. Błędy 404 mogą występować celowo, kiedy właściciel usunął podstronę lub całą domenę (np. aby ją wyindeksować).
Wykorzystuje się je również do robienia porządków w indeksie. Do usuwania niepotrzebnych podstron, informacji lub w momencie, gdy nie chcemy wykorzystywać przekierowania 301. Pamiętaj, żeby każdorazowo podjąć decyzję odnośnie linków – czy mają one być przekierowane czy usunięte. Przekierowanie przenosi ruch na inny link, usunięcie natomiast może spowodować problem z przejściu użytkowników na tę samą lub inną podstronę, której szukał.
Kody 404 mogą również występować przypadkowo z powodu błędu w systemie (lub np. serwera) i wtedy stanowią zazwyczaj duży problem dla pozycjonerów. Przypadkowych wystąpień kodu 404 należy unikać.
Istnieje parę sposobów na zagospodarowanie błędów 404 na Twojej witrynie. Więcej na ten temat możesz przeczytać w artykule: Czy błąd 404 szkodzi twojej witrynie i jak go wykorzystać.
Status kodu HTTP 5xx
Kody błędów rozpoczynające się od 5xx dotyczą bezpośrednio błędów serwera. Są one tak samo problematyczne jak 4xx, ponieważ powodują, że istnieje duży problem w indeksacji podstron w Google. Kody te pojawiają się, kiedy klient wysyła prawidłowe żądanie do serwera, ale serwer nie jest go w stanie przetworzyć. Efekt będzie taki, że ani użytkownik, ani bot Google nie zobaczy treści.
Częste błędy serwera mogą powodować błędy w indeksowaniu całych domen lub poszczególnych podstron. Jeśli błędy serwera powtarzają się regularnie, wydajność indeksowania witryny nagle może zmaleć. Boty nie będą indeksować takich podstron, dopóki problem nie zostanie rozwiązany. Jest to bezpośrednio powiązane z oceną jakości i szybkości ładowania się witryn przez robota Google. Dzieje się tak wtedy, kiedy czas reakcji na odpowiedź serwera, a tym samym na odpowiedź w stronę użytkownika jest zbyt wolny. Wysoka jakość przekazywanych treści (i szybkość ich ładowania) oraz pozytywne wrażenia użytkownika z odbierania ich są niezwykle ważne w procesie pozycjonowania, co stara się właśnie oceniać Googlebot (stawiając się w roli potencjalnego klienta i odbiorcy treści).
Kod HTTP 500 jest jednym z częstszych zjawisk, z którymi możemy mieć do czynienia. Wskazuje, że na domenie nastąpił problem z serwerem, który nie został określony. Strony oznaczone tym błędem, podobnie jak te o kodzie błędu 404, są dla użytkowników oraz botów Google ślepymi zaułkami. Nigdzie nie przekierowują, ale też nie przekazują jakiejkolwiek treści.
Innym dość często występującym kodem w zakresie HTTP 5xx, jest kod błędu 503 „Service Unavailable”. Na stronach pojawia się wtedy komunikat „Service Temporarily Unavailable” – „Serwis tymczasowo niedostępny”. Jest to reakcja na przeciążenie serwera lub tymczasową niedostępność spowodowaną np. zaplanowaną konserwacją. Zazwyczaj jest to stan przejściowy, ale regularnie powtarzany może prowadzić do wyżej wymienionych niedogodności i problemów z działaniami SEO. Zbyt długi czas występowania kodu błędu 503 sprawi, że robot Google potraktuje go jako kod 500. Błąd 503 wskazuje jednocześnie, że Googlebot może wrócić później w celu weryfikacji, czy domena już działa. Kod 500 nie gwarantuje jego szybkiego powrotu na stronę www.
Gdzie mogę znaleźć linki z kodami błędów?
Wiesz już, co może zaszkodzić widoczności Twojej witryny, ale powinieneś jeszcze potrafić znaleźć linki, które te błędy już zawierają. Sprawdź, gdzie szukać potencjalnych problemów i jak przeanalizować domenę pod kątem aktualnych błędów HTTP:
- A1 Website Analyzer – program sprawdzający między innymi to, czy domena nie posiada uszkodzonych linków, przekierowań (o których nie wiemy, ale też te, o których wiemy) i błędów HTTP.
- Screaming Frog – jeden z najbardziej popularnych programów do weryfikacji struktury linków strony pod kątem SEO. Między innymi znajduje wszystkie URLe należące do domeny i weryfikuje, jakie kody zwracają (czy są dostępne, czy nie). Dodatkowo dzięki niemu możesz stworzyć rozbudowaną analizę onsite.
- Google Search Console – darmowe narzędzie Google pozwalające w skrócie określić, co widzi wyszukiwarka. Aby mieć dostęp do danych tam zawartych, wymagane jest zaimplementowanie na domenie odpowiedniego kodu, który będzie zbierał informacje o witrynie. W przedstawionym tam raporcie, w zakładce „Stan”, znajdziesz podsumowanie odnośnie zaindeksowanych podstron oraz ich stanu.
Kody błędów HTTP a SEO
Żadna z wyżej wymienionych odpowiedzi HTTP (wdrożona świadomie lub nieświadomie), nie może zostać niezauważona. W szczególności kiedy na stronie wykonywane są czynności SEO. Jeśli jednak nie prowadzisz takich działań, postaraj się zapamiętać te najważniejsze kody błędów, które niewykryte, mogą poważnie zagrozić widoczności i indeksacji Twojej witryny w Google. Ich zrozumienie, pozwoli lepiej zdiagnozować problemy pojawiające się na witrynie, a reakcja na nie będzie znacznie szybsza. Oprócz naocznej weryfikacji ilości błędów, możesz skorzystać z pomocy wyżej wymienionych programów i narzędzi, ale również poprosić o audyt SEO wykrywający między innymi takie problemy. Pamiętaj, że nie wszystkie kody błędów, które zwraca strona są złe. W rękach odpowiedniego opiekuna SEO, pozwalają na lepszy odbiór witryny przez robota Google.
1 https://developer.mozilla.org/pl/docs/Web/HTTP
Kasia Cieślik
Specjalistka ds. SEO