Przekierowanie 301 to odpowiedź serwera o nazwie „Moved Permanently”: strona została na stałe przeniesiona pod inny adres, a przeglądarka i robot Google mają od razu przejść pod nowy. Pojawia się po zmianie adresu podstrony, przebudowie serwisu, przejściu z http na https albo przy adresach bez ukośnika na końcu. Użytkownik trafia na właściwą stronę, Google przenosi pozycje na nowy adres, ale każde przekierowanie kosztuje dodatkowe żądanie robota i potrafi układać się w łańcuchy.
Co dokładnie oznacza kod 301?
Kod 301 to jedna z odpowiedzi klasy 3xx, którą standard HTTP (RFC 9110, sekcja 15.4.2) opisuje jako przekierowania: serwer nie zwraca treści, tylko nagłówek Location z nowym adresem, a klient sam wysyła kolejne żądanie pod ten adres. Odpowiedź 301 mówi dodatkowo, że zmiana jest stała i wszystkie odwołania do starego adresu mają być zastąpione nowym.
Dla użytkownika przekierowanie jest niewidoczne. Przeglądarka odbiera 301, pobiera nową stronę i pokazuje w pasku adresu nowy adres. Przeglądarki zapamiętują odpowiedź 301 w pamięci podręcznej, więc przy kolejnej wizycie idą od razu pod nowy adres, bez pytania serwera. Z tego samego powodu pomyłkę w 301 trudno cofnąć u osób, które już ją odwiedziły.
Przekierowanie da się zrobić także bez kodu HTTP: znacznikiem meta refresh w HTML albo skryptem JavaScript zmieniającym location. Google traktuje meta refresh z opóźnieniem 0 sekund i przekierowanie JavaScript jak stałe, ale zaleca kody HTTP, bo robot nie musi renderować strony, żeby je odczytać.
Przekierowanie 301 to odpowiedź serwera, nie link. Link wymaga kliknięcia i prowadzi z jednej strony na drugą. Przekierowanie działa na samym adresie i uruchamia się przy każdym wejściu, także z Google, reklam i zakładek.
Czym różni się 301 od 302, 307 i 308?
Kody 301 i 308 oznaczają przeniesienie stałe, kody 302 i 307 tymczasowe. Różnica w drugiej parze dotyczy metody HTTP: przy 307 i 308 klient musi powtórzyć żądanie tą samą metodą (np. POST z formularza), przy 301 i 302 może zamienić ją na GET.
| Kod | Nazwa | Trwałość | Metoda HTTP | Co robi Google | Kiedy stosować |
|---|---|---|---|---|---|
| 301 | Moved Permanently | stałe | może zmienić na GET | Silny sygnał, że adres docelowy jest kanoniczny; przenosi sygnały rankingowe | Zmiana adresu, migracja, http→https, scalanie duplikatów |
| 308 | Permanent Redirect | stałe | zachowuje | Jak 301 | Jak 301, gdy adres obsługuje formularze lub API |
| 302 | Found | tymczasowe | może zmienić na GET | Słaby sygnał; stary adres może zostać w indeksie | Promocja, test, chwilowe zastępstwo strony |
| 307 | Temporary Redirect | tymczasowe | zachowuje | Jak 302 | Jak 302, gdy adres obsługuje formularze lub API |
Google w dokumentacji przekierowań opisuje 301 i 308 jako sygnał, że strona docelowa ma być kanoniczna, a 302 i 307 jako sygnał, że kanoniczny może pozostać adres źródłowy. W praktyce Google podąża za każdym z tych kodów, a różnica polega na tym, który adres zostanie w wynikach wyszukiwania. Do zmian na stałe używaj 301, do tymczasowych 302.
Jak przekierowanie 301 wpływa na pozycjonowanie?
Przekierowanie 301 przenosi sygnały rankingowe ze starego adresu na nowy: Google indeksuje adres docelowy jako kanoniczny, a linki prowadzące do starego adresu liczą się na rzecz nowego. Gary Illyes z Google potwierdził w 2016 roku, że przekierowania 3xx nie powodują już utraty PageRank.
Warunek jest jeden: strona docelowa ma odpowiadać na tę samą potrzebę co stara. Przekierowanie z opisu usługi na stronę główną albo na niepowiązaną kategorię Google klasyfikuje jako soft 404 i nie przenosi na nią pozycji.
Koszt pojawia się przy łańcuchach. Adres A przekierowuje na B, B na C, C na D: robot Google podąża domyślnie do 10 przeskoków w jednym łańcuchu, ale każdy przeskok to osobne żądanie, dłuższy czas ładowania i słabszy sygnał. Pętla (A na B, B na A) kończy się wierszem „Błąd przekierowania” w raporcie Strony w Google Search Console i taka strona nie trafia do indeksu.
Na roseo.com.pl przekierowania 301 stanowią 15% wszystkich żądań robota Google z ostatnich 90 dni (Statystyki indeksowania, stan 4.09.2026). To żądania, które nie pobrały żadnej treści. Większość z nich to adresy bez ukośnika na końcu, które WordPress sam przekierowuje na wersję z ukośnikiem, a Google wciąż je odwiedza z linków zewnętrznych i starych wpisów. Przekierowanie działa, ale porządek w linkach zdejmuje z robota tę pracę.
Kiedy stosować przekierowanie 301, a kiedy nie?
Przekierowanie 301 ustawiasz wtedy, gdy stary adres ma zamiennik o tej samej tematyce i zmiana jest na stałe.
✅ Kiedy 301 jest właściwe
- ✓Zmiana adresu podstrony. Nowy slug, nowa struktura kategorii, poprawiona literówka w adresie.
- ✓Zmiana domeny lub przebudowa strony. Mapa przekierowań stary adres → nowy adres dla każdej podstrony, która miała ruch lub linki (zobacz, jak zrobić przekierowania przy zmianie domeny). Przy nowej stronie internetowej mapa powstaje przed startem, nie po.
- ✓Wersja http → https, www i bez www. Jedna wersja adresu jest kanoniczna, pozostałe przekierowują kodem 301.
- ✓Usunięta strona z zamiennikiem. Produkt zastąpiony nowszą wersją, usługa scalona z inną, dwa wpisy o tym samym połączone w jeden. W sklepie co zrobić ze stroną wycofanego produktu pokazuje, kiedy to jest właściwy wybór.
- ✓Duplikaty tej samej treści. Adresy z wielką literą, z ukośnikiem i bez, z parametrem śledzącym, które mają jeden odpowiednik.
🚫 Kiedy 301 jest błędem
- ✕Strona bez zamiennika. Zostaw kod 404 albo ustaw 410; przekierowanie na stronę główną Google klasyfikuje jako soft 404.
- ✕Zmiana tymczasowa. Promocja, test nowej wersji strony, chwilowe zastępstwo: kod 302 lub 307, stary adres wraca po zakończeniu.
- ✕Warianty, które mają istnieć. Kolory produktu, sortowanie, filtry: tag canonical wskazuje wersję główną, a strony zostają dostępne.
- ✕Masowe przekierowanie wszystkiego na stronę główną po migracji. Google traktuje to jak soft 404, a użytkownik z reklamy lub wyników trafia na stronę bez odpowiedzi na swoje pytanie.
Planujesz przebudowę strony albo zmianę domeny?
Przygotujemy mapę przekierowań w ramach pozycjonowania i sprawdzimy ją po wdrożeniu.
Jak sprawdzić, czy przekierowanie 301 działa?
Sprawdzasz kod odpowiedzi, nie wygląd strony. Strona po przekierowaniu wygląda tak samo przy kodzie 301 i 302, a różnicę widzą tylko narzędzia.
Terminal: curl -I
Pokazuje samą odpowiedź serwera: kod, nagłówek Location i kto ustawił przekierowanie. Wynik dla roseo.com.pl niżej.
Narzędzia deweloperskie
W Chrome klawisz F12, zakładka Network (Sieć), opcja „Preserve log”. Po wpisaniu adresu widać wiersz ze statusem 301 i drugi z 200 pod nowym adresem.
Google Search Console
W raporcie Strony (Indeksowanie → Strony) szukaj wiersza „Strona zawiera przekierowanie”, a w Ustawienia → Statystyki indeksowania karty „Według odpowiedzi”. Brak dostępu? Zobacz jak dodać użytkownika do Google Search Console.
Wynik polecenia curl -I dla adresu bez ukośnika na roseo.com.pl (5.09.2026):
curl -I https://roseo.com.pl/oferta/strony-internetoweHTTP/2 301x-redirect-by: WordPresslocation: https://roseo.com.pl/oferta/strony-internetowe/
Nagłówek x-redirect-by: WordPress mówi, że przekierowanie ustawił WordPress, nie serwer ani wtyczka. Adres http://roseo.com.pl/ zwraca z kolei HTTP/1.1 301 Moved Permanently z serwera LiteSpeed, czyli przekierowanie na https działa na poziomie serwera.



Na roseo.com.pl raport wskazuje 40 takich adresów. Na liście przykładów są wersje bez ukośnika, np. /oferta/strony-internetowe, do których Google dotarł z linków w innych serwisach. To nie błąd, tylko informacja: adresy w linkach zewnętrznych i wewnętrznych mają mieć docelową formę, żeby robot nie wykonywał dwóch żądań zamiast jednego.
Jak ustawić przekierowanie 301 w WordPressie w skrócie?
W WordPressie przekierowanie 301 ustawiasz we wtyczce SEO albo w pliku .htaccess na serwerze. Skrót w czterech krokach:
Wtyczka
Rank Math → Redirections (moduł Przekierowania) albo wtyczka Redirection. Obie działają bez edycji plików.
Reguła
Adres źródłowy (stary), adres docelowy (nowy, pełny, z ukośnikiem), typ 301. Jedna reguła na jeden adres, bez pośrednich przeskoków.
Test
Polecenie curl -I ze starym adresem albo zakładka Network w przeglądarce: kod 301 i nagłówek Location z nowym adresem.
Migracja
Przy zmianie domeny lub przebudowie całej strony przekierowania idą do .htaccess (Apache lub LiteSpeed) z mapy stary → nowy adres, a wtyczka zostaje dla pojedynczych poprawek.
Powyższe kroki to skrót – pełna instrukcja z zrzutami pokazuje Rank Math, wtyczkę Redirection i plik .htaccess po kolei. Ten sam mechanizm (wtyczka, reguła, test) opisujemy też razem z kodem 410 i regułami .htaccess we wpisie Jak naprawić błąd 404 w WordPressie?
Jakie pojęcia wiążą się z przekierowaniem 301?
- Błąd 404: odpowiedź „nie znaleziono”; przekierowanie 301 to podstawowe narzędzie, gdy usunięty adres ma zamiennik. Więcej we wpisie Co to jest błąd 404?.
- 410 Gone: kod dla treści usuniętej celowo i bez zamiennika, alternatywa dla 301.
- Soft 404: strona bez treści zwracająca kod 200, w tym efekt przekierowania wszystkiego na stronę główną.
- Tag canonical: znacznik
rel="canonical", który wskazuje wersję główną bez przekierowania, gdy warianty mają pozostać dostępne. - Łańcuch przekierowań: kilka przekierowań jedno po drugim; robot Google podąża do 10 przeskoków, ale każdy kosztuje.
- Budżet indeksowania (crawl budget): liczba żądań, jakie robot Google wykonuje na stronie w danym czasie; przekierowania zużywają go bez pobrania treści.
Nie wiesz, które adresy przekierować, a które zostawić z kodem 404?
Sprawdzimy raport Search Console i wskażemy listę.
FAQ
Nie. Google potwierdziło w 2016 roku, że przekierowania 3xx nie powodują utraty PageRank. Warunkiem przeniesienia pozycji jest strona docelowa o tej samej tematyce; przekierowanie na niepowiązaną stronę Google traktuje jak soft 404.
Od kilku dni do kilku tygodni, w zależności od tego, jak często robot odwiedza stary adres. Google musi pobrać stary adres, odczytać 301 i zindeksować nowy. Zgłoszenie nowego adresu w Search Console (Sprawdzenie adresu URL → Poproś o zindeksowanie) przyspiesza pierwszy krok.
Tak, po usunięciu reguły serwer znów zwraca treść pod starym adresem i Google indeksuje go ponownie. Przeglądarki użytkowników, którzy odwiedzili adres w czasie działania 301, mogą jeszcze przez jakiś czas iść pod nowy adres z pamięci podręcznej.
Nie. Google klasyfikuje takie przekierowania jako soft 404, bo strona główna nie odpowiada na potrzebę użytkownika z usuniętej podstrony. Każdy stary adres przekierowujesz na stronę o tej samej tematyce, a adresy bez zamiennika zostawiasz z kodem 404 lub 410.
Nie, dopóki do starego adresu prowadzą linki z innych stron lub wejścia z zakładek. Google zaleca utrzymywanie przekierowań po migracji co najmniej rok. Usuwasz tylko pośrednie przeskoki w łańcuchach, tak żeby każdy stary adres prowadził bezpośrednio do końcowego.
Źródła
- RFC 9110 „HTTP Semantics”, sekcja 15.4 (kody 3xx): rfc-editor.org/rfc/rfc9110
- Google Search Central, „Przekierowania i wyszukiwarka Google”: developers.google.com
- Google Search Central, „Kody stanu HTTP oraz błędy sieci i DNS” (limit 10 przeskoków): developers.google.com
- Google Search Console, raport „Strony”: support.google.com/webmasters
