Czym jest przekierowanie 301? Stałe redirecty i SEO | WebMajka
Czym jest przekierowanie 301 — stałe przeniesienie URL-a
Przekierowanie 301 to oficjalny kod statusu HTTP oznaczający Moved Permanently — "trwale przeniesione". Gdy użytkownik (lub robot wyszukiwarki) wchodzi na stary adres, serwer odpowiada kodem 301 i informuje o nowej lokalizacji — przeglądarka automatycznie przekierowuje na nowy URL. To najważniejszy typ przekierowania w świecie SEO, ponieważ Google traktuje je jako sygnał, że stara strona definitywnie zniknęła, a cała jej "moc SEO" (link equity, pozycje, autorytet) powinna zostać przeniesiona na nowy URL. Redirect 301 to fundament technicznego pozycjonowania — używany przy zmianach struktury URL, migracji domen, usuwaniu starych stron czy ujednolicaniu wersji HTTP/HTTPS.
Jak działa przekierowanie 301 w praktyce
Technicznie proces 301 wygląda następująco: użytkownik klika link prowadzący do example.com/stary-url. Serwer odbiera żądanie GET i zamiast wyświetlić stronę, zwraca nagłówek HTTP:
HTTP/1.1 301 Moved Permanently
Location: https://example.com/nowy-url
Przeglądarka widzi kod 301 i natychmiast wysyła nowe żądanie GET do URL w nagłówku Location. Dla użytkownika proces jest niewidoczny — widzi tylko nowy URL w pasku adresu. Cały cykl zajmuje zwykle dodatkowe 50-200 ms, co jest pomijalne. Przeglądarki cachują przekierowania 301 — po pierwszej wizycie zapamiętują, że stary URL prowadzi do nowego, i pomijają stary krok przy kolejnych odwiedzinach. To dodatkowa optymalizacja wydajności, ale też powód, dla którego błędnie ustawione 301 są trudne do naprawienia.
Przekierowanie 301 vs 302 — kluczowe różnice
Najczęstsze pytanie: kiedy 301, a kiedy 302? Odpowiedź zależy od tego, czy zmiana jest trwała, czy tymczasowa:
| Cecha | 301 Moved Permanently | 302 Found (Temporary) |
|---|---|---|
| Znaczenie | Stałe przeniesienie | Tymczasowe przeniesienie |
| Przekazanie SEO | Tak (pełne przekazanie mocy) | Bardzo ograniczone |
| Cache przeglądarki | Długi (nawet lata) | Brak lub krótki |
| Aktualizacja indeksu | Google aktualizuje URL | Google zachowuje stary URL |
| Typowe użycie | Migracja, stała zmiana URL | Promocja, chwilowe A/B testy |
| Usunięcie strony | 410 Gone lepsze | Nie nadaje się |
| Konserwacja | 503 lepsze | Nie nadaje się |
Zasada praktyczna: 99% przekierowań na stronach WWW powinno być 301. Używaj 302 tylko wtedy, gdy jesteś pewien, że za kilka dni przywrócisz stary URL. Błędne użycie 302 zamiast 301 to jeden z najczęstszych błędów SEO — Google nie przekaże mocy na nowy URL, a stary pozostanie w indeksie.
Kiedy stosować 301 redirect
Typowe scenariusze, w których stałe przekierowanie jest konieczne:
- Migracja domeny —
olddomain.pl → newdomain.pl(wszystkie podstrony) - Zmiana struktury URL —
/artykul-1.html → /blog/artykul-1/ - Konsolidacja treści — łączenie dwóch starych artykułów w jeden nowy
- HTTPS migration —
http://example.pl → https://example.pl - Www unification —
www.example.pl → example.pl(lub odwrotnie) - Usunięcie przestarzałej treści — zmiana kierunku na podobny temat
- Zmiana CMS — nowe URL-e po migracji z Joomla na WordPress
- Ujednolicenie trailing slash —
/kontakt → /kontakt/ - Usunięcie parametrów —
/?id=5 → /ladny-url/ - Kanonikalizacja — preferowana wersja URL dla duplikatów
Każdy z tych scenariuszy wymaga planu przekierowań przed usunięciem starych URL-i. Bez 301 tracisz pozycje SEO i użytkownicy trafiają na 404.
Jak zrobić przekierowanie 301 — 3 metody
Istnieje kilka praktycznych sposobów wdrożenia 301:
1. Plik .htaccess (Apache, LiteSpeed):
Redirect 301 /stary-url /nowy-url
# lub z mod_rewrite:
RewriteRule ^stary-url/?$ /nowy-url [R=301,L]
2. Nagłówek HTTP w PHP:
header("HTTP/1.1 301 Moved Permanently");
header("Location: https://example.com/nowy-url");
exit;
3. Wtyczka CMS — dla WordPress wtyczki "Redirection" albo "Yoast SEO" mają panel zarządzania przekierowaniami; dla PrestaShop moduł SEO URLs.
Dla typowej strony firmowej najwygodniej używać wtyczki — widzisz listę redirectów, możesz edytować bez FTP, widzisz statystyki użycia. Dla większej liczby regułek warto przenieść wszystko do .htaccess — wtyczka spowalnia stronę.

301 a SEO — wpływ na pozycjonowanie
Oficjalne stanowisko Google: przekierowanie 301 przekazuje praktycznie 100% link equity. W praktyce oznacza to, że nowy URL dziedziczy pozycje, backlinki i autorytet starej strony. To dotyczy tylko prawidłowo zaimplementowanego 301 — błędne 302, łańcuchy przekierowań, circular redirects mogą zablokować przekazanie mocy. Zasady dobrego 301 dla SEO:
- Kierowanie URL na URL o podobnej treści — nie całej strony na główną
- Jeden krok — unikaj łańcuchów A → B → C → D (max 3 kroki, najlepiej 1)
- Serwerowy 301 — nie używaj JavaScript
window.locationani meta refresh - Zachowanie parametru URL — jeśli masz query strings, zaktualizuj linki wewnętrzne
- Aktualizacja sitemap.xml — nowe URL-e w mapie strony
- Aktualizacja internal links — linki w treści powinny prowadzić do nowych URL-i
- Czas na reindexację — Google potrzebuje kilku tygodni, żeby zaktualizować indeks
Brak 301 przy migracji strony to jedna z najczęstszych przyczyn spadku pozycji o 50-80%. Zawsze planuj redirecty z wyprzedzeniem.
Łańcuch przekierowań — problem do uniknięcia
Redirect chain to sytuacja, gdy URL A przekierowuje na B, B na C, C na D. Każdy kolejny krok to dodatkowy HTTP request, co pogarsza:
- Wydajność — każde dodatkowe 100-300 ms opóźnienia
- SEO — Google niechętnie podąża za długimi łańcuchami, może zrezygnować po 3-5 skokach
- UX — użytkownik widzi dłuższe ładowanie
- Cache — przeglądarka musi cachować wiele URL-i
Typowy przykład: http://example.pl → https://example.pl → https://www.example.pl → https://www.example.pl/nowa-struktura/stary-artykul/ — to cztery skoki zamiast jednego. Rozwiązanie: zamiast łańcucha ustaw bezpośrednie redirect A → D (ostatnia wersja). Narzędzia jak Screaming Frog potrafią znaleźć wszystkie chains na stronie. Warto raz na kwartał przeskanować redirecty i uproszczać.
Kiedy NIE używać 301
Przekierowanie 301 nie jest uniwersalną odpowiedzią. Scenariusze, w których lepsze są inne kody:
- Tymczasowy remont strony →
503 Service UnavailablezRetry-After - Usunięcie strony, bez zamiennika →
410 Gone(informuje Google, że strona definitywnie znikła) - Promocja tymczasowa →
302 Found(np./promocja → /produkt-promona miesiąc) - A/B test →
302, nie 301, żeby nie zmieniać indeksu - Wersja językowa → hreflang, nie redirect
- Przekierowanie na podstawie user-agenta → 302 zamiast 301 (mobile vs desktop)
- Stary URL z wartością SEO, który zostanie przywrócony → 302 lepsze niż 301
Rozróżnienie, kiedy jaki kod — to rzecz odróżniająca senior SEO od amatora.
Testowanie przekierowań
Po wdrożeniu redirectów trzeba przetestować, czy działają poprawnie. Metody:
- Przeglądarka + DevTools (F12 → Network) — widzisz dokładnie każdy redirect i jego kod
- curl z linii komend:
curl -I https://example.pl/stary-urlpokazuje nagłówki HTTP - Narzędzia online: redirectchecker.com, httpstatus.io — wklejasz URL, dostajesz raport
- Screaming Frog — pełne crawlowanie strony, widzisz wszystkie redirecty i łańcuchy
- Google Search Console — raport Coverage pokazuje błędy przekierowań
- Log serwera — analiza logów pokazuje, które redirecty są faktycznie używane
Dla migracji domen warto przetestować losową próbkę 50-100 URL-i — szybkie sanity check.
Częste błędy z redirectami 301
Problemy, które najczęściej widzimy u klientów:
- 302 zamiast 301 — nieświadome użycie, np. w plugin WP
- Meta refresh zamiast server-side —
<meta http-equiv="refresh" content="0;url=...">to NIE jest 301 - JavaScript redirect —
window.location = '...'Google może ignorować - Łańcuch przekierowań — A → B → C zamiast A → C
- Circular redirect — A → B → A, pętla nieskończona, błąd 500
- Redirect wszystkiego na stronę główną — tracisz całe SEO starych stron
- Brak aktualizacji linków wewnętrznych — linki w treści nadal prowadzą do starych URL
- Redirect po literówce —
exmaple.pl → example.plrodzaj zdrowy - Nie przekierowanie wszystkich wersji — redirect z
www, ale beznon-www - Niepoprawne przekierowanie slash —
/kontakt/ → /kontaktlub odwrotnie
Systematyczne testowanie po każdej zmianie URL-i zapobiega tym problemom.
Podsumowanie — 301 jako narzędzie każdego webmastera
Przekierowanie 301 to jedno z najważniejszych narzędzi technicznego SEO. Używasz go przy każdej poważniejszej zmianie na stronie — migracji domen, restrukturyzacji URL-i, konsolidacji treści, przejściu na HTTPS. Prawidłowo wdrożone chroni przed utratą pozycji w Google i zapewnia dobre doświadczenie użytkownika. Kluczowe zasady: 301 (nie 302) dla stałych zmian, jeden skok (nie łańcuch), serwerowy redirect (nie JavaScript ani meta refresh), aktualizacja sitemap i linków wewnętrznych, testowanie po wdrożeniu. Przy profesjonalnym tworzeniu stron internetowych każda migracja rozpoczyna się od audytu starych URL-i i planu redirectów — bez tego straty SEO są nieuniknione. Dla mniejszych stron wystarczy wtyczka "Redirection" w WordPress — narzędzie sprawdzone dziesiątkami tysięcy migracji.
Najczęściej zadawane pytania (FAQ)
Czym różni się 301 od 302?
Czy 301 przekierowanie przekazuje pozycje w Google?
Ile trwa, zanim Google zaktualizuje po 301?
Jak zrobić przekierowanie 301 w WordPressie?
.htaccess przez FTP. Dla dużej liczby redirectów lepszy jest .htaccess — wtyczka spowalnia stronę przy setkach reguł.Czy mogę przekierować całą stronę na nową domenę?
RedirectMatch 301 ^/(.*)$ https://nowadomena.pl/$1 zachowa strukturę. Przed migracją: lista starych URL-i + plan redirectów + zgłoszenie zmiany adresu w Google Search Console.