- Algorytmik
- SEO
- Przekierowanie 301 i 302: kiedy które, jak je ustawić i co dzieje się z pozycjami
Przekierowanie 301 i 302: kiedy które, jak je ustawić i co dzieje się z pozycjami
Przekierowanie 301 mówi Google, że strona przeniosła się na stałe, a 302 - że tylko na chwilę. Od tego wyboru zależy, który adres zobaczysz w wynikach wyszukiwania.

Spis treści
- Kiedy użyć przekierowania 301, a kiedy 302?
- Jakie typy przekierowań rozpoznaje Google?
- Co dzieje się z pozycjami po przekierowaniu 301?
- Jak ustawić przekierowanie 301 i 302 na serwerze?
- Meta refresh i JavaScript: kiedy serwer nie wchodzi w grę
- Jak zrobić migrację z przekierowaniami krok po kroku?
- Dlaczego stary adres nadal wyświetla się w Google?
Przekierowanie 301 informuje Google, że strona została przeniesiona na stałe, więc w wynikach wyszukiwania pokazuje się adres docelowy. Przekierowanie 302 jest tymczasowe i w wynikach zostaje adres źródłowy. Wybór zależy więc od tego, jak długo przekierowanie ma działać i którą stronę chcesz widzieć w Google.
Przeczytałem dokumentację Google o przekierowaniach i przenoszeniu witryn. Poniżej znajdziesz z niej tylko to, co dotyczy decyzji i konfiguracji: typy przekierowań, gotowe reguły serwera i listę kroków migracji.
W skrócie
- Trwałe przekierowania (301, 308) pokazują w wynikach stronę docelową, tymczasowe (302, 303, 307) - stronę źródłową.
- Google zaleca przekierowania po stronie serwera jako najpewniej interpretowane.
- Według Google 301 i inne przekierowania stałe nie powodują utraty pozycji w PageRank.
- Przy średnich witrynach Google potrzebuje zwykle kilku tygodni lub więcej, by stopniowo zamienić stare adresy na nowe.
- Natychmiastowy meta refresh Google czyta jako trwały, opóźniony jako tymczasowy.
Kiedy użyć przekierowania 301, a kiedy 302?
Zasada jest prosta: jeśli stary adres ma zniknąć z wyników, użyj przekierowania trwałego. Jeśli stary adres ma zostać w Google, a użytkownicy mają tylko chwilowo trafiać gdzie indziej, użyj tymczasowego.
Centrum wyszukiwarki Google wymienia przypadki, w których przekierowania są szczególnie użyteczne:
- witryna została przeniesiona do nowej domeny i zależy Ci na płynnym przejściu,
- na stronę główną można wejść kilkoma adresami (np. z www i bez www) i chcesz wybrać jeden jako kanoniczny,
- łączysz 2 witryny i linki do nieaktualnych adresów mają trafiać na właściwe strony,
- poprzednia strona została usunięta i chcesz skierować użytkowników na nową.
Przekierowanie tymczasowe sprawdza się na przykład wtedy, gdy usługa jest chwilowo niedostępna. Odsyłasz użytkowników na stronę, która wyjaśnia, co się dzieje, a Google nie uwzględnia tego przekierowania. Według dokumentacji może to pomóc w utrzymaniu starego adresu w wynikach i nie obniża jego pozycji.
Jakie typy przekierowań rozpoznaje Google?
Użytkownicy zwykle nie rozróżniają typów przekierowań, ale dla Google ma to znaczenie. Typy trwałe są sygnałem, że docelowa strona powinna być kanoniczna. Przy tymczasowych Googlebot też śledzi przekierowanie, lecz nie traktuje go jako takiego sygnału.
| Rodzaj | Metody | Co robi Google |
|---|---|---|
| Trwałe | HTTP 301, HTTP 308, meta refresh (0 sekund), odświeżanie HTTP (0 sekund), JavaScript location, przekierowanie crypto | Interpretuje cel jako stronę kanoniczną |
| Tymczasowe | HTTP 302, HTTP 303, HTTP 307, meta refresh (więcej niż 0 sekund), HTTP refresh (więcej niż 0 sekund) | Śledzi przekierowanie, ale nie uznaje celu za kanoniczny |
Strona docelowa przekierowania tymczasowego może nadal trafić do indeksu, jeśli istnieją inne sygnały wyboru strony kanonicznej. Dokumentacja porządkuje metody według prawdopodobieństwa prawidłowej interpretacji. Największe szanse ma przekierowanie po stronie serwera, dlatego od niego warto zaczynać.
Co dzieje się z pozycjami po przekierowaniu 301?
Według dokumentacji Google o przenoszeniu witryny nie musisz obawiać się utraty udziału linków. Google pisze wprost, że 301 i inne przekierowania stałe nie powodują utraty pozycji w PageRank.
Nie znaczy to, że pozycje się nie ruszą. Podczas przenoszenia witryny mogą wystąpić tymczasowe wahania rankingu, bo Google ponownie pobiera i indeksuje strony po każdej istotnej zmianie. Zwykle w przypadku witryn średniego rozmiaru Google potrzebuje kilku tygodni lub więcej, aby stopniowo pokazywać nowe adresy zamiast starych. Przy większych witrynach trwa to jeszcze dłużej.
Tempo zależy od liczby adresów URL i szybkości serwera. Google nie podaje stałej częstotliwości indeksowania, a zmiany są rozpoznawane osobno dla każdego adresu. Przeniesienie uznaje się za zakończone dopiero wtedy, gdy Googlebot odwiedzi co najmniej raz wszystkie adresy w starej i nowej witrynie. Jak to sprawdzać, opisuję w tekście o indeksowaniu strony w Google.
Jak ustawić przekierowanie 301 i 302 na serwerze?
Przekierowania po stronie serwera ustawisz w plikach konfiguracyjnych (np. .htaccess na Apache) albo skryptem po stronie serwera (np. PHP). Sposób zależy od hostingu, serwera i backendu. Poniższe przykłady pochodzą z dokumentacji Google.
PHP
Nagłówki ustaw, zanim wyślesz cokolwiek na ekran.
// 301
header('HTTP/1.1 301 Moved Permanently');
header('Location: https://www.example.com/newurl');
exit();
// 302
header('HTTP/1.1 302 Found');
header('Location: https://www.example.com/newurl');
exit();
Apache
Najprostsza forma to mod_alias:
# Permanent redirect:
Redirect permanent "/old" "https://example.com/new"
# Temporary redirect:
Redirect temp "/two-old" "https://example.com/two-new"
Do bardziej złożonych reguł użyj mod_rewrite:
RewriteEngine on
# permanent
RewriteRule "^/service$" "/about/service" [R=301]
# temporary
RewriteRule "^/service$" "/about/service" [R]
NGINX
location = /service {
# permanent redirect
return 301 $scheme://example.com/about/service;
# temporary redirect (użyj zamiast powyższego)
# return 302 $scheme://example.com/about/service;
}
W NGINX do bardziej skomplikowanych przypadków służy reguła rewrite z flagą permanent albo redirect. Jeśli masz inny serwer, Google radzi zajrzeć do instrukcji hostingu lub zapytać jego dostawcę.
Jeśli przenosisz stronę na stałe, a skrypt lub wtyczka ustawia 302, Google nie uzna celu za kanoniczny. W wynikach może zostać stary adres. Po wdrożeniu sprawdź kod odpowiedzi dla kilku starych adresów, zanim uznasz sprawę za zamkniętą.
Meta refresh i JavaScript: kiedy serwer nie wchodzi w grę
Jeśli na swojej platformie nie możesz zrobić przekierowania po stronie serwera, Google dopuszcza meta refresh. Rozróżnia dwa rodzaje:
- natychmiastowy - uruchamia się zaraz po wczytaniu strony i jest interpretowany jako trwały,
- opóźniony - uruchamia się po liczbie sekund ustawionej przez Ciebie i jest interpretowany jako tymczasowy.
Tag umieszczasz w elemencie <head>:
<meta http-equiv="refresh" content="0; url=https://example.com/newlocation">
Zmiana 0 na 5 robi z niego przekierowanie opóźnione, czyli tymczasowe. Odpowiednik w nagłówku HTTP to Refresh: 0; url=https://www.example.com/newlocation.
Przekierowanie JavaScript (window.location.href) Google też obsługuje. Wykonuje kod dopiero po zindeksowaniu adresu, w usłudze renderowania internetowego. Jest to więc metoda mniej bezpośrednia niż 301 po stronie serwera.
Ostatnia opcja to link z krótkim wyjaśnieniem, że treści są pod nowym adresem. Google może uznać go za przekierowanie crypto. Dokumentacja zastrzega, że niektóre wyszukiwarki nie rozpoznają tego pseudoprzekierowania jako oficjalnego, więc traktuj to wyłącznie jako ostateczność.
Jak zrobić migrację z przekierowaniami krok po kroku?
Przy zmianie adresów (HTTP na HTTPS, nowa domena, nowe ścieżki) przekierowania są jednym z ostatnich etapów. Google zaleca też zmieniać tylko jedną rzecz naraz, na przykład najpierw domenę, potem układ strony. Przenoszenie najlepiej planować na okres mniejszego ruchu.
| Etap | Co zrobić |
|---|---|
| 1. Lista starych adresów | Zacznij od najważniejszych: mapy witryn, logi serwera lub analityka, funkcja Linki do Twojej witryny w Search Console, lista z CMS. Uwzględnij grafiki, filmy, JavaScript i CSS |
| 2. Mapowanie | Przypisz każdemu staremu adresowi odpowiednik w nowej witrynie. Przy zmianie domeny wystarczy przekierowanie z symbolem wieloznacznym |
| 3. Nowa witryna | Skonfiguruj CMS, przenieś obrazy i pliki PDF, ustaw certyfikaty TLS przy HTTPS, przygotuj robots.txt i usuń noindex z fazy prac |
| 4. Treści usunięte | Adresy, których nie przenosisz, powinny zwracać kod 404 lub 410 |
| 5. Search Console | Zweryfikuj własność starej i nowej witryny we wszystkich wariantach (www, bez www, HTTP, HTTPS) |
| 6. Przekierowania | Ustaw przekierowania 301 ze starych adresów na nowe |
| 7. Adnotacje | Dodaj rel="canonical" wskazujący na siebie, zaktualizuj hreflang i linki wewnętrzne |
| 8. Monitoring | Prześlij mapę witryny i obserwuj raporty Stan indeksowania oraz Mapy witryn |
Szczegóły konfiguracji narzędzia znajdziesz w poradniku Google Search Console od zera. Reguły blokowania w nowej witrynie omawia tekst o pliku robots.txt, a szerszy kontekst techniczny - poradnik o pozycjonowaniu strony.
Zadbaj też o serwer. Po migracji Google przez pewien czas indeksuje nową witrynę częściej niż zwykle, bo zarówno próby wejścia na stary adres, jak i bezpośrednie indeksowanie nowego trafiają na nowy serwer. Przy bardzo dużej witrynie Google radzi uprzedzić dostawcę hostingu.
Dlaczego stary adres nadal wyświetla się w Google?
Gdy przekierowujesz adres, Google śledzi zarówno źródło, jak i cel. Jeden z nich zostaje kanoniczny, a drugi traktowany jest jako alternatywna nazwa. Wybór zależy m.in. od tego, czy przekierowanie jest tymczasowe czy trwałe.
Alternatywne nazwy mogą pojawiać się w wynikach, jeśli zapytanie użytkownika wskazuje, że bardziej ufa on staremu adresowi. Po zmianie domeny jest bardzo prawdopodobne, że stare adresy będą się czasem wyświetlać, mimo że nowe są już zindeksowane. Google nazywa to normalnym zjawiskiem. Gdy użytkownicy przyzwyczają się do nowej nazwy domeny, alternatywne nazwy znikną samoczynnie.
Czy przekierowanie 301 obniża pozycje w Google?
Według dokumentacji Google 301 i inne przekierowania stałe nie powodują utraty pozycji w PageRank. Podczas przenoszenia witryny mogą jednak wystąpić tymczasowe wahania rankingu, bo Google ponownie pobiera i indeksuje strony.
Czym różni się przekierowanie 301 od 302?
301 jest trwałe i jest sygnałem, że docelowa strona ma być kanoniczna, więc w wynikach pokazuje się strona docelowa. 302 jest tymczasowe i w wynikach pokazuje się strona źródłowa.
Jak długo Google zamienia stare adresy na nowe?
Przy witrynach średniego rozmiaru zwykle kilka tygodni lub więcej, przy większych dłużej. Google nie podaje stałej częstotliwości indeksowania. Czas zależy od liczby adresów URL i szybkości serwera.
Czy meta refresh lub JavaScript mogą zastąpić przekierowanie 301?
Google je obsługuje: natychmiastowy meta refresh jest traktowany jako trwały, opóźniony jako tymczasowy. Dokumentacja wskazuje jednak przekierowania po stronie serwera jako te o największych szansach prawidłowej interpretacji.
Co zrobić z adresami, których nie przenoszę do nowej witryny?
Według Google powinny one zwracać w nowej witrynie kod odpowiedzi HTTP 404 lub 410. Przekierowanie użytkowników na nową stronę jest opisane jako rozwiązanie na sytuację, gdy poprzednia została usunięta.
Czy po stronie serwera da się ustawić 301 i 302 w NGINX?
Tak. W bloku location użyj return 301 dla przekierowania stałego albo return 302 dla tymczasowego. Dla bardziej złożonych reguł dokumentacja podaje rewrite z flagą permanent lub redirect.
Źródła
- Przekierowania a wyszukiwarka Google - Centrum wyszukiwarki Google, Google for Developers - dostęp 25.10.2026
- Przenoszenie witryny i migracja - Centrum wyszukiwarki Google, Google for Developers - dostęp 25.10.2026
Widzisz błąd albo nieaktualną liczbę? Napisz: kontakt. Poprawki opisuję w tekście z datą.
Autor i wydawca Algorytmika. Od lat pisze o wyszukiwarkach, AI i mediach społecznościowych, a na co dzień prowadzi serwisy, które żyją z ruchu z Google, Discover i sociali. Każdą liczbę w tekstach podpina pod źródło.
Jak pracuję i skąd biorę dane →

