Przekierowanie 301 - co to jest, jak je ustawić i sprawdzić

Biała strzałka na niebieskim tle - ilustracja przekierowania 301
Spis treści

Przekierowanie 301 to odpowiedź serwera, która mówi przeglądarce i robotom wyszukiwarek, że strona trwale przeniosła się pod nowy adres. Gość trafia od razu na nową stronę, a Google traktuje 301 jako silny sygnał, że to nowy adres ma zastąpić stary w wynikach wyszukiwania. Przekierowania stosuje się przy zmianie adresu podstrony, przeniesieniu domeny, przejściu na https i wyborze jednej wersji adresu (z www albo bez). Niżej znajdziesz bezpłatny tester, który pokazuje każdy skok przekierowania, a pod nim to, jak ustawić 301 na najpopularniejszych serwerach i jakich błędów unikać.

W skrócie

  • 301 i 308 to przekierowania trwałe - Google pokazuje wtedy w wynikach nowy adres. 302, 303 i 307 są tymczasowe i stary adres zwykle zostaje.
  • Jeden skok zamiast łańcucha - przekierowuj od razu na adres docelowy; Google radzi łańcuch najwyżej trzech skoków, a roboty śledzą zwykle do dziesięciu.
  • Wszystkie wersje adresu w jedno miejsce - http i https, z www i bez, powinny kończyć się pod tym samym adresem.
  • Przekierowanie trzymaj co najmniej rok - tyle zaleca Google po przeniesieniu witryny.

Sprawdź przekierowania swojej strony

Tester pobiera podany adres z naszego serwera i pokazuje każdy skok po kolei: kod odpowiedzi i adres, na który prowadzi. Sprawdza też trzy pozostałe wersje tego samego adresu, czyli wariant z www i bez oraz po http i po https. Wszystkie powinny kończyć się pod jednym adresem i to jest najczęstsze miejsce, w którym coś się rozjeżdża.

Wpisz adres. Pokażemy każdy skok z kodem odpowiedzi i sprawdzimy, czy wersje z www i bez, po http i po https prowadzą w jedno miejsce.

Wynik dostajesz jako listę znalezisk: co trzeba naprawić, co warto sprawdzić i co działa poprawnie. Nie ma tu oceny punktowej, bo przekierowanie albo prowadzi tam, gdzie powinno, albo nie. Pełny przegląd strony (tytuł, opis, nagłówki, robots.txt) zrobisz w narzędziu szybki audyt on-page.

Czym jest przekierowanie 301 i jak działa?

Przekierowanie 301 to kod statusu HTTP „Moved Permanently” wysyłany razem z nagłówkiem Location, który wskazuje nowy adres. Przeglądarka po otrzymaniu takiej odpowiedzi od razu pobiera stronę spod adresu z nagłówka, więc gość zwykle nawet nie zauważa, że po drodze był jeszcze jeden krok. Tak wygląda odpowiedź serwera dla starego adresu:

HTTP/1.1 301 Moved Permanently
Location: https://example.com/nowy-adres/

Roboty Google robią to samo co przeglądarka: idą pod nowy adres i biorą pod uwagę treść strony docelowej, a nie tej, która przekierowała. Według dokumentacji Google Search Central przekierowanie trwałe jest sygnałem, że cel przekierowania powinien zostać uznany za adres kanoniczny, więc w wynikach z czasem pojawia się nowy adres zamiast starego.

301, 302, 307 i 308 - czym różnią się kody przekierowań?

Kody przekierowań dzielą się na trwałe (301 i 308) i tymczasowe (302, 303 i 307). Dla Google liczy się przede wszystkim ten podział: przekierowanie trwałe to silny sygnał, że cel ma zastąpić stary adres, a tymczasowe to sygnał słaby. Różnice wewnątrz każdej pary dotyczą tego, co przeglądarka robi z formularzami (metodą żądania), a nie tego, jak strona pozycjonuje się w wyszukiwarce.

KodRodzajJak traktuje go GoogleKiedy go użyć
301trwałesilny sygnał, w wynikach pojawia się nowy adreszmiana adresu na stałe, przeniesienie domeny, http na https
308trwałetak samo jak 301jak 301, gdy pod adresem działają formularze wysyłane metodą POST
302tymczasowesłaby sygnał, w wynikach zostaje zwykle stary adreschwilowa przerwa, akcja promocyjna, test
307tymczasowetak samo jak 302jak 302, gdy metoda żądania ma zostać zachowana
303tymczasowetak samo jak 302po wysłaniu formularza, żeby odświeżenie strony nie wysłało go drugi raz
Źródło: Google Search Central (obsługa kodów HTTP przez roboty Google) i MDN Web Docs (przekierowania w HTTP).

W praktyce przy zmianie adresu strony prawie zawsze chodzi o 301. Kod 308 powstał, żeby usunąć niejasność: specyfikacja 301 nie przewidywała zmiany metody żądania, ale część przeglądarek przy 301 zamienia wysyłkę formularza (POST) na zwykłe pobranie strony (GET). 308 gwarantuje, że metoda i treść żądania zostaną zachowane. Google sam przypomina, że choć traktuje te kody tak samo, warto wybierać właściwy, bo korzystają z nich też inne programy i wyszukiwarki.

Kiedy stosować przekierowanie 301?

Przekierowanie 301 stosuje się wszędzie tam, gdzie stary adres ma przestać działać na stałe, a jego treść ma odpowiednik pod nowym adresem. Najczęstsze sytuacje:

  • Zmiana adresu podstrony - poprawiony slug, przeniesienie wpisu do innej kategorii, nowa struktura adresów sklepu.
  • Przeniesienie witryny na nową domenę - każdy stary adres powinien prowadzić do swojego odpowiednika, a nie hurtowo na stronę główną.
  • Przejście z http na https - wersja nieszyfrowana ma przekierowywać na szyfrowaną, inaczej ta sama strona istnieje pod dwoma adresami.
  • Wybór wersji z www albo bez - jedna jest główna, druga przekierowuje na nią.
  • Scalenie dwóch tekstów na ten sam temat - słabszy przekierowuje na mocniejszy, co porządkuje też kanibalizację fraz.

Nie każda usunięta strona potrzebuje przekierowania. Google wprost odradza kierowanie wielu starych adresów na jeden niezwiązany adres, na przykład na stronę główną nowej witryny: myli to użytkowników i może zostać potraktowane jak miękki błąd 404. Jeśli strona znika bez odpowiednika, uczciwszą odpowiedzią jest kod 404 albo 410.

Jak ustawić przekierowanie 301?

Przekierowanie 301 ustawia się po stronie serwera: w konfiguracji serwera WWW, we wtyczce systemu CMS albo w regułach CDN, przez który przechodzi ruch. Google zaleca trwałe przekierowanie po stronie serwera wszędzie, gdzie to możliwe, i nazywa je najlepszym sposobem, żeby wyszukiwarka i ludzie trafili na właściwą stronę. Poniżej przykłady dla najpopularniejszych środowisk; adresy example.com zastąp własnymi.

Apache (.htaccess)

Pojedynczy adres przekierujesz jedną linią w pliku .htaccess w katalogu strony:

Redirect 301 /stary-adres/ https://example.com/nowy-adres/

Przejście całej witryny z http na https robi się modułem mod_rewrite. Reguła zachowuje ścieżkę, więc każda podstrona trafia na swój odpowiednik:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

nginx

W nginx przekierowanie zapisuje się dyrektywą return. Pierwszy przykład przenosi jeden adres, drugi kieruje wszystkie wersje po http (z www i bez) od razu na główny adres po https, jednym skokiem:

location = /stary-adres/ {
    return 301 https://example.com/nowy-adres/;
}

server {
    listen 80;
    server_name example.com www.example.com;
    return 301 https://example.com$request_uri;
}

Pamiętaj o wersji https://www.example.com: ona też potrzebuje reguły przekierowującej na adres główny, a do tego certyfikatu, który obejmuje nazwę z www. Bez certyfikatu przeglądarka pokaże błąd, zanim w ogóle dojdzie do przekierowania.

WordPress

W WordPressie najwygodniej ustawiać przekierowania we wtyczce. Rank Math ma wbudowany moduł przekierowań, są też osobne wtyczki tylko do tego celu. Wtyczka działa jednak dopiero wtedy, gdy uruchomi się WordPress, więc przekierowania całej witryny (http na https, www na wersję bez www) lepiej ustawić na serwerze albo w CDN, a we wtyczce zostawić przekierowania pojedynczych podstron.

Cloudflare i inne CDN

Jeśli ruch na stronę przechodzi przez Cloudflare albo inny CDN, przekierowania można ustawić w jego regułach, bez dostępu do serwera. Taka reguła działa na brzegu sieci, więc odpowiedź 301 dociera do gościa szybciej niż z serwera. Warto tylko pilnować, żeby ta sama zmiana nie była ustawiona dwa razy (w CDN i na serwerze), bo właśnie tak powstają łańcuchy i pętle.

Jak sprawdzić, czy przekierowanie działa?

Najszybciej sprawdzisz przekierowanie testerem na górze tej strony albo poleceniem curl w terminalu. Samo otwarcie adresu w przeglądarce niewiele mówi: przeglądarka zapamiętuje przekierowania trwałe, nie pokazuje kodów odpowiedzi i nie sprawdza pozostałych wersji adresu. Polecenie poniżej pokazuje nagłówki pierwszej odpowiedzi, a z przełącznikiem -L idzie za przekierowaniami do końca:

curl -sI https://example.com/stary-adres/
curl -sIL https://example.com/stary-adres/

Z Search Console warto korzystać ostrożnie. Według dokumentacji Google roboty śledzą zwykle do 10 skoków przekierowań, ale narzędzia inspekcji Google za przekierowaniami nie idą. Dlatego stary adres i stronę docelową sprawdzaj w Search Console osobno. Przy większej zmianie adresów przekierowania warto potraktować jako stały punkt audytu SEO, bo psują się po cichu, na przykład po aktualizacji wtyczki albo zmianie hostingu.

Najczęstsze błędy przy przekierowaniach

Większość problemów z przekierowaniami bierze się z reguł dokładanych warstwami: najpierw na serwerze, potem we wtyczce, potem w CDN. Każda działa osobno poprawnie, ale razem tworzą łańcuchy albo pętle. Te błędy pokazuje tester wyżej:

  • Łańcuch przekierowań - adres przechodzi przez kilka skoków, zanim dotrze do celu (np. http://www na https://www, potem na https bez www). Google radzi przekierowywać od razu na adres docelowy, a gdy to niemożliwe, trzymać łańcuch krótko, najlepiej nie dłuższy niż 3 skoki i krótszy niż 5.
  • Pętla przekierowań - dwie reguły odsyłają do siebie nawzajem, a przeglądarka kończy błędem „zbyt wiele przekierowań”. Częsty przypadek: CDN wymusza https, a serwer, który dostaje od CDN ruch po http, odsyła go z powrotem.
  • 302 zamiast 301 - przekierowanie dopisane w kodzie strony łatwo dostaje kod tymczasowy, bo tak działają ustawienia domyślne: funkcja header('Location: …') w PHP i wp_redirect() w WordPressie wysyłają 302, jeśli nie podasz kodu. Przy zmianie na stałe stary adres może wtedy długo zostawać w wynikach.
  • Różne wersje adresu kończą się w różnych miejscach - na przykład wersja z www otwiera się bez przekierowania. Ta sama strona istnieje wtedy dwa razy, a linki rozkładają się na dwie kopie.
  • Przekierowanie na stronę z błędem - cel przekierowania zwraca 404 albo 500. Formalnie przekierowanie działa, ale gość i robot trafiają w ślepy zaułek.
  • Stare linki wewnętrzne - przekierowanie ratuje ruch z zewnątrz, ale linki w menu i w tekstach własnej strony warto podmienić na nowe adresy. Każdy link przez przekierowanie to dodatkowe żądanie przy każdym kliknięciu.

Jak długo utrzymywać przekierowanie 301?

Przekierowanie 301 utrzymuj tak długo, jak się da, a co najmniej rok. Tyle zaleca Google w poradniku o przenoszeniu witryny ze zmianą adresów, dodając, że użytkownicy mogą korzystać ze starych adresów jeszcze dłużej. Przekierowanie kosztuje niewiele, a odcina ryzyko, że stare linki z innych stron, zakładki i wyniki wyszukiwania zaczną prowadzić donikąd. Szczególnie dotyczy to adresów, które mają linki zewnętrzne - przy nich usunięcie przekierowania sprawia, że linki zaczynają prowadzić na stronę błędu.

Po zmianie adresów zaktualizuj też mapę witryny i znaczniki kanoniczne tak, żeby wskazywały nowe adresy. Przekierowanie mówi wyszukiwarce, gdzie jest strona, ale sprzeczne sygnały (stary adres w mapie witryny, stary adres w tagu canonical) spowalniają przejście. Szerzej o tym, jak takie sygnały wpływają na pozycje, piszemy w przewodniku o optymalizacji SEO.

Najczęstsze pytania

Czym różni się przekierowanie 301 od 302?

Przekierowanie 301 jest trwałe, a 302 tymczasowe. Google traktuje 301 jako silny sygnał, że nowy adres ma zastąpić stary w wynikach wyszukiwania, a 302 jako sygnał słaby, więc w wynikach zwykle zostaje stary adres. Przy zmianie adresu na stałe używaj 301 (albo 308), a 302 zostaw na sytuacje chwilowe, takie jak przerwa techniczna czy akcja promocyjna.

Czy lepiej użyć przekierowania 301 czy 308?

Dla Google oba kody znaczą to samo: przekierowanie trwałe. Różnica dotyczy przeglądarek. Przy 308 metoda żądania i jego treść muszą zostać zachowane, więc formularz wysłany metodą POST nie zamieni się po drodze w zwykłe pobranie strony. Dla zwykłych podstron 301 w zupełności wystarczy.

Czy przekierowanie w JavaScripcie działa dla Google?

Działa, ale Google zaleca je tylko wtedy, gdy nie da się ustawić przekierowania na serwerze ani przez meta refresh. Google próbuje wyrenderować każdą stronę, jednak renderowanie może się nie udać i wtedy przekierowania w JavaScripcie w ogóle nie zobaczy. Nasz tester pobiera strony bez JavaScriptu, więc takich przekierowań również nie pokaże.

Czy meta refresh to przekierowanie 301?

Natychmiastowy meta refresh (z opóźnieniem 0 sekund) Google interpretuje jak przekierowanie trwałe, a opóźniony jak tymczasowe. Mimo to Google zaleca przekierowanie po stronie serwera wszędzie, gdzie jest możliwe. Meta refresh to rozwiązanie awaryjne dla platform, na których nie ma dostępu do konfiguracji serwera.

Ile przekierowań może mieć łańcuch?

Według dokumentacji Google roboty Google śledzą zwykle do 10 skoków przekierowań. Google radzi jednak przekierowywać od razu do adresu docelowego, a jeśli to niemożliwe, trzymać łańcuch krótko, najlepiej nie dłuższy niż 3 skoki. Każdy skok to osobne żądanie, więc długi łańcuch spowalnia też wczytywanie strony.

Dlaczego po przekierowaniu Google nadal pokazuje stary adres?

Przejście z adresu na adres nie dzieje się od razu: Google musi ponownie pobrać stary adres i zobaczyć przekierowanie. Jeśli przekierowanie jest tymczasowe (302 albo 307), stary adres może zostać w wynikach na dłużej. Google zaznacza też, że po przeniesieniu witryny stare adresy mogą jeszcze od czasu do czasu pojawiać się w wynikach.

Źródła: Google Search Central (przekierowania i Wyszukiwarka Google, obsługa kodów HTTP przez roboty Google, przenoszenie witryny ze zmianą adresów URL) oraz MDN Web Docs (przekierowania w HTTP), stan na październik 2026. Sposób, w jaki weryfikujemy fakty, opisujemy na stronie Metodologia.

Michał Wiercimok
O autorze
Michał Wiercimok
Ekspert marketingu internetowego

Michał Wiercimok - specjalista marketingu internetowego z ponad 20-letnim doświadczeniem. Prowadzi własną agencję marketingową i doradza firmom w zakresie Google Ads, SEO, analityki (GA4) oraz wykorzystania sztucznej inteligencji w marketingu. Zrealizował ponad 100 projektów dla klientów z różnych branż; wyróżniony w programie Google Partners Rising Stars (2016). Działa z Katowic.

Z aktualności: SEO

Więcej aktualności →

Checklista audytu marketingu

Zapisz się na newsletter, a od razu wyślemy Ci checklistę: SEO, Ads, analityka, social media i CRO. Bez spamu.