Czym są przekierowania 301 i dlaczego są kluczowe po zmianie domeny
Przekierowania 301 to podstawa bezbolesnej zmiany adresu witryny — informują przeglądarki i wyszukiwarki, że strona została przeniesiona na stałe. Dzięki temu użytkownicy trafiają automatycznie pod nowy adres, a Google przenosi większość autorytetu i pozycji SEO na nową domenę. Bez tego ryzykujesz spadki widoczności, błędy 404 i chaos w analityce.
Po migracji domeny każda stara ścieżka powinna kierować do odpowiedniej nowej ścieżki. Najlepiej, by przekierowanie było 1:1 (z zachowaniem ścieżek i parametrów), zamiast prowadzić wszystkich na stronę główną. To oszczędza budżet indeksowania i poprawia doświadczenie użytkownika.
Najważniejsze: zastosuj przekierowania na poziomie serwera lub na brzegu sieci (CDN), a dopiero w razie potrzeby używaj wtyczek.
Plan działania przed uruchomieniem przekierowań
- Wykonaj pełną kopię zapasową plików i bazy danych.
- Przygotuj mapę adresów URL: stare → nowe, najlepiej w arkuszu.
- Zadbaj o wersje protokołu i www: zdecyduj, czy finalnie ma być https:// i czy z www, czy bez (spójność!).
- Zaktualizuj adresy w WordPressie (Ustawienia → Ogólne: Adres WordPressa i Adres witryny).
- Zaktualizuj linki w bazie (np. Better Search Replace lub WP-CLI), aby wewnętrzne odnośniki i media wskazywały nową domenę.
- Utrzymaj tę samą strukturę URL, jeśli to możliwe — uprości to przekierowania.
- Przygotuj środowisko testowe i sprawdź wszystko przed publikacją.
Gdzie najlepiej wdrożyć przekierowania 301
- Serwer (Apache/Nginx) — najszybsze i najstabilniejsze. Polecane.
- CDN (np. Cloudflare) — świetne, jeśli nie masz łatwego dostępu do serwera lub migrujesz wiele domen.
- Wtyczka WordPress — wygodne, ale wolniejsze i zależne od aplikacji (działają tylko, gdy PHP się uruchomi).
Metoda 1: przekierowania 301 na Apache (.htaccess)
To częsty scenariusz hostingów współdzielonych. Umieść reguły jak najwyżej w pliku .htaccess starej domeny (przed WordPress Rewrite).
Przekierowanie całej domeny ze starej na nową z zachowaniem ścieżek:
- RewriteEngine On
- RewriteCond %{HTTP_HOST} ^stara-domena.pl$ [OR]
- RewriteCond %{HTTP_HOST} ^www.stara-domena.pl$
- RewriteRule ^(.)$ https://nowa-domena.pl/$1 [R=301,L]
Jeśli zmieniasz też protokół na HTTPS i chcesz standaryzacji bez www:
- RewriteEngine On
- RewriteCond %{HTTP_HOST} !^nowa-domena.pl$ [OR]
- RewriteCond %{HTTPS} off
- RewriteRule ^(.)$ https://nowa-domena.pl/$1 [R=301,L]
Wykluczenie panelu logowania i well-known (przydatne przy certyfikatach):
- RewriteCond %{REQUEST_URI} !^/wp-admin
- RewriteCond %{REQUEST_URI} !^/.well-known
Przekierowanie pojedynczych starych podstron na nowe:
- Redirect 301 /stary-artykul/ https://nowa-domena.pl/nowy-artykul/
Wskazówki:
- Domyślnie Apache przenosi parametry zapytań — nie trzeba o to dbać osobno.
- Reguły umieszczaj nad wpisami WordPress (BEGIN/END), aby zadziałały jako pierwsze.
- Używaj 301 (stałe), nie 302 (tymczasowe), chyba że to testy.
Metoda 2: przekierowania 301 na Nginx
Nginx nie używa .htaccess — konfiguracja jest w plikach serwerowych (server block). Skontaktuj się z administratorem, jeśli nie masz dostępu.
Cała domena na nową z zachowaniem ścieżek:
- server {
listen 80;
server_name stara-domena.pl www.stara-domena.pl;
return 301 https://nowa-domena.pl$request_uri;
}
Wymuszenie HTTPS i bez www:
- server {
listen 80;
server_name www.nowa-domena.pl;
return 301 https://nowa-domena.pl$request_uri;
}
Wskazówki:
- Parametry zapytań są zachowywane automatycznie.
- Zrestartuj Nginx po zmianach i przetestuj reguły.
Metoda 3: przekierowania 301 w Cloudflare (Bulk Redirects)
Jeśli domena jest za Cloudflare, skorzystaj z Bulk Redirects:
- W Cloudflare → Rules → Bulk Redirects → utwórz listę mapowań: stary URL → nowy URL, wybierz status 301.
- Do przekierowania całej domeny użyj wyrażeń typu:
- Source: https://stara-domena.pl/
- Target: https://nowa-domena.pl/$1
- Preserve query string: on
Zalety:
- Szybkość na krawędzi sieci.
- Mniej obciążenia serwera.
- Dobra obsługa dużych list reguł (tzw. bulk).
Metoda 4: przekierowania 301 przez wtyczkę (gdy brak dostępu do serwera)
Wygodne, choć wolniejsze, bo wymagają uruchomienia WordPressa.
Polecane wtyczki:
- Redirection — prosta, raportuje 404, wspiera wzorce i eksport.
- Rank Math / Yoast — moduły do przekierowań w pakietach SEO.
- Simple 301 Redirects — minimalizm, dobry do migracji mapy URL.
Jak to zrobić w Redirection:
- Zainstaluj i włącz wtyczkę.
- Utwórz grupę „Migracja domeny”.
- Dodaj regułę: Źródło: /^(.+)$/ Destynacja: https://nowa-domena.pl/$1 (typ: 301).
- Dodaj wyjątki dla /wp-admin czy ścieżek serwisowych, jeśli serwer nie obsługuje ich osobno.
Wskazówka:
- Nie polegaj wyłącznie na wtyczkach przy dużych migracjach — lepszy serwer lub CDN.
Dobre praktyki przy przekierowaniach 301 po zmianie domeny
- Dąż do przekierowań 1:1, nie wszystko na stronę główną.
- Unikaj łańcuchów (stara → pośrednia → nowa). Ma być: stara → nowa w 1 kroku.
- Zachowuj query stringi (np. UTMy) — domyślnie serwer je przenosi.
- Standaryzuj protokół i www (jedna docelowa wersja).
- Zostaw przekierowania min. 12 miesięcy, a najlepiej na stałe.
- Aktualizuj linki wewnętrzne, aby użytkownik nie trafiał w redirect nawigując po stronie.
- Zadbaj o kanoniczne adresy (tag rel=canonical wskazuje nową domenę).
- Zaktualizuj sitemapę i prześlij ją w Search Console.
- Monitoruj błędy 404 i dopisuj brakujące reguły.
Testowanie i kontrola jakości po wdrożeniu
Sprawdź kluczowe podstrony:
- Narzędzia online (np. httpstatus.io) lub komenda: curl -I https://stara-domena.pl/wybrana-strona/
- Powinieneś zobaczyć: HTTP/1.1 301 Moved Permanently, a pod nowym adresem — 200 OK.
Dodatkowo:
- Przeskanuj starą domenę Screaming Frog/Netpeak i zobacz, czy każdy adres zwraca 301 i prowadzi do 200 na nowej.
- Włącz raportowanie 404 (wtyczka Redirection lub logi serwera).
- Sprawdź szybkość — zbyt skomplikowane reguły mogą spowalniać.
SEO i analityka: działania po zmianie domeny
- Google Search Console:
- Dodaj nową domenę jako usługę (Domain Property).
- Skorzystaj z narzędzia „Change of Address” (zmiana adresu) dla starej domeny.
- Prześlij nową sitemapę i sprawdzaj indeksowanie.
- Google Analytics/GA4:
- Zaktualizuj odwołania do domeny w ustawieniach strumienia danych.
- Pliki i konfiguracje:
- Zaktualizuj robots.txt (pod nową domeną).
- Sprawdź ustawienia reklam, pixeli, webhooków, integracji płatności.
- Linki zewnętrzne:
- Skontaktuj się z kluczowymi partnerami, aby zaktualizowali odnośniki do nowej domeny. To pomoże szybciej odbudować autorytet.
Typowe pułapki i jak ich uniknąć
- Przekierowanie wszystkiego na stronę główną — duże straty SEO i UX.
- Łańcuchy przekierowań — zwiększają opóźnienia i mogą obniżyć moc linków.
- Brak spójności www/HTTPS — powstają zawiłe reguły i konflikty.
- Przekierowania przez wtyczkę zamiast serwera — gorsza wydajność.
- Zapomniane ścieżki serwisowe (/wp-admin, /.well-known, /feed) — błędy logowania, problemy z certyfikatami.
- Brak wyjątków dla starych zasobów statycznych (np. obrazów w newsletterach) — rozważ pozostawienie cache na CDN lub reguły plików.
- Mixed content po migracji do HTTPS — wymuś HTTPS i zrób wyszukiwanie-zamianę http → https w bazie.
Szczególne przypadki migracji
- Migracja subdomeny na domenę główną:
- „>nowa.pl/blog/* (przekierowania wildcard).
- Zmiana struktury URL:
- Rozważ wzorce (regex) i mapy CSV do masowych przekierowań.
- Multisite:
- Każdy site wymaga własnego zestawu reguł i aktualizacji domeny.
- Headless/SPA:
- Ustal przekierowania na poziomie reverse proxy/CDN i sprawdź obsługę routingu po stronie klienta.
Jak utrzymać porządek po wdrożeniu przekierowań 301
- Dokumentuj wszystkie reguły (kto, kiedy, dlaczego) — łatwiej utrzymasz porządek.
- Grupuj przekierowania (globalne, sekcje, pojedyncze adresy).
- Cyklicznie przeglądaj logi i wyłapuj nowe 404.
- Minimalizuj liczbę reguł — najpierw rozwiązania globalne (domena, protokół), potem wyjątki.
Szybka ściągawka: minimalny zestaw działań
- Ustal docelową wersję: https://nowa-domena.pl (bez www lub z www).
- Na starym hostingu dodaj globalną regułę 301 ze starej domeny na nową z zachowaniem ścieżki.
- W WordPress ustaw nowy adres witryny i zaktualizuj linki w bazie.
- Prześlij nową sitemapę i użyj „Change of Address” w Search Console.
- Monitoruj 404 i naprawiaj brakujące mapowania.
Zmiana domeny nie musi boleć. Dobrze przygotowane przekierowania 301 potrafią uratować pozycje w Google, zachować ruch i oszczędzić użytkownikom frustracji. Jeśli masz wątpliwości, najpierw przetestuj reguły na środowisku staging, a dopiero potem uruchom je produkcyjnie.