Sprytne Okazje — promocje, kody rabatowe i wyprzedaże

Generator przekierowań .htaccess

Przenoś adresy bez utraty SEO

Bezpieczne (SSL)
Przetwarzanie Lokalne
100% Darmowe
Instrukcja
  • 1
    Wprowadź dane
    Wpisz treść, wklej tekst lub załaduj plik z dysku.
  • 2
    Kliknij przycisk
    Narzędzie natychmiast przetworzy Twoje dane w przeglądarce.
  • 3
    Pobierz wynik
    Skopiuj gotowy tekst lub zapisz plik na urządzeniu.
function runTool() {
  return "Wynik gotowy w 0.1s";
}
Podaj adresy, aby wygenerować przekierowanie.

Oceń to narzędzie:

Powiązane narzędzia

Inne narzędzia, które mogą Ci się przydać

Generator przekierowań w .htaccess

Przekierowania przenoszą użytkowników i wyszukiwarki ze starych adresów na nowe. Dobrze ustawione chronią pozycję strony i unikają błędów 404.

301 czy 302?

KodZnaczenieKiedy stosować
301trwałe przeniesieniezmiana adresu na stałe — przekazuje SEO
302tymczasowe przeniesienietesty, prace serwisowe

Dopasowanie dokładne i prefiks

Reguła dokładna przenosi jeden adres. Wariant prefiksowy (RedirectMatch) obsługuje cały katalog — np. wszystkie podstrony /stary/ na /nowy/, zachowując resztę ścieżki.

Przykład

Redirect 301 /stara-strona https://example.com/nowa-strona

Dla katalogu: RedirectMatch 301 ^/blog/(.*)$ https://example.com/artykuly/$1.

Jak działa generator przekierowań .htaccess

Narzędzie zamienia trzy dane wejściowe — adres źródłowy, adres docelowy i kod odpowiedzi — na gotową regułę do pliku .htaccess. Serwer Apache czyta ten plik przy każdym żądaniu i porównuje ścieżkę z wzorcami od góry do dołu. Pierwsza pasująca reguła przejmuje żądanie, dlatego kolejność wpisów jest równie ważna jak ich treść.

Dla pojedynczego adresu powstaje dyrektywa z mod_alias, na przykład Redirect 301 /stara-strona https://example.com/nowa-strona. Dla całego katalogu potrzebny jest RedirectMatch z wyrażeniem regularnym i grupą przechwytującą, na przykład ^/blog/(.*)$ — nawias zbiera resztę ścieżki, a $1 wstawia ją do adresu docelowego. Bez grupy wszystkie podstrony trafiłyby na jeden wspólny adres, co dla wyszukiwarek jest błędem.

Gdy hosting nie ma mod_alias, generator przygotowuje wariant na mod_rewrite: RewriteEngine On oraz RewriteRule ^stara-strona/?$ https://example.com/nowa-strona [R=301,L]. Flaga R ustala kod odpowiedzi, a L kończy przetwarzanie dalszych reguł. Kod 301 oznacza przeniesienie trwałe, 302 tymczasowe — przeglądarka zapamiętuje 301 na długo, więc pomyłka w tym miejscu jest kosztowna i trudna do szybkiego cofnięcia.

Przykład krok po kroku: cztery adresy jedną regułą

  1. Stan wyjściowy: w katalogu /blog/ masz cztery adresy — /blog/, /blog/poradnik, /blog/cena i /blog/kontakt. Nowa struktura to /artykuly/ z identycznymi końcówkami.
  2. W narzędziu wpisujesz adres źródłowy /blog/, adres docelowy https://example.com/artykuly/ oraz kod 301.
  3. Generator rozpoznaje, że źródłem jest katalog, i tworzy regułę prefiksową: RedirectMatch 301 ^/blog/(.*)$ https://example.com/artykuly/$1
  4. Test pierwszego adresu: żądanie /blog/poradnik pasuje do wzorca, w grupie $1 ląduje tekst poradnik, wynik to https://example.com/artykuly/poradnik. Obsłużony 1 z 4 adresów.
  5. Test drugiego: /blog/cena daje https://example.com/artykuly/cena. Do sprawdzenia zostają 2 adresy — /blog/ i /blog/kontakt — oba pasują do tego samego wzorca.
  6. Bilans: 4 stare adresy obsłużone 1 regułą, czyli 0 dodatkowych wpisów i 1 kod odpowiedzi (301) dla całej grupy.

Tabela referencyjna: co wpisujesz i co dostajesz

PrzypadekDane wejścioweWygenerowana reguła
Pojedynczy adres, przeniesienie na stałeźródło /stara-strona, cel https://example.com/nowa-strona, kod 301Redirect 301 /stara-strona https://example.com/nowa-strona
Pojedynczy adres, test lub prace serwisoweźródło /stara-strona, cel https://example.com/nowa-strona, kod 302Redirect 302 /stara-strona https://example.com/nowa-strona
Cały katalog ze zachowaniem ścieżkiźródło /blog/, cel https://example.com/artykuly/, kod 301RedirectMatch 301 ^/blog/(.*)$ https://example.com/artykuly/$1
Ten sam efekt bez mod_aliasźródło /blog/, cel https://example.com/artykuly/, kod 301RewriteRule ^blog/(.*)$ https://example.com/artykuly/$1 [R=301,L]
Tylko katalog główny, bez podstronźródło /blog/, cel https://example.com/artykuly/, kod 301RedirectMatch 301 ^/blog/?$ https://example.com/artykuly/
Przeniesienie całej domeny na innąźródło /, cel https://nowa-domena.pl/, kod 301RedirectMatch 301 ^/(.*)$ https://nowa-domena.pl/$1
Wymuszenie HTTPS na całej witrynieźródło /, cel https://twoja-domena.pl/, kod 301RewriteCond %{HTTPS} off, następnie RewriteRule ^(.*)$ https://twoja-domena.pl/$1 [R=301,L]

Jak używać generatora w praktyce

  • Wklejaj reguły pojedynczo i testuj — najpierw dodaj jeden wpis, sprawdź w narzędziu deweloperskim przeglądarki kod odpowiedzi i adres docelowy, dopiero potem wstawiaj kolejne. Błąd w pierwszej regule potrafi zamaskować działanie wszystkich następnych.
  • Pilnuj kolejności wpisów — reguły bardziej szczegółowe umieszczaj nad ogólnymi. Szeroki wzorzec katalogowy postawiony wyżej przechwyci żądania, które miały trafić do wyjątku opisanego niżej.
  • Wdrażaj przez 302, kończ na 301 — ustaw czasowo kod 302, sprawdź na kilku adresach, że nic nie ginie, a potem zmień na 301. Trwałe przekierowanie zapisuje się w przeglądarkach i robotach, więc poprawianie go po fakcie bywa uciążliwe.
  • Sprawdź, czy nie tworzysz pętli — adres źródłowy i docelowy nie mogą wskazywać na siebie ani dwóch adresów na siebie nawzajem. Pętla kończy się błędem w przeglądarce i zablokowaniem całej ścieżki.
  • Opisz wpisy komentarzem — linia zaczynająca się od znaku # z datą i powodem przekierowania oszczędza czas przy kolejnej zmianie struktury adresów, zwłaszcza gdy plik prowadzi kilka osób.

Ograniczenia narzędzia

  • Nie sprawdza, czy adres docelowy istnieje — generator zwraca tylko regułę i nie wysyła żadnego żądania. Jeśli po stronie celu nie ma strony, użytkownik zobaczy 404 mimo poprawnie działającego przekierowania.
  • Nie zna konfiguracji serwera — o tym, czy działa mod_alias, czy mod_rewrite, decyduje hosting. Narzędzie podaje oba warianty, ale nie wykryje, który moduł jest włączony ani czy przekierowanie w ogóle zostanie wykonane.
  • Nie wykrywa konfliktów z istniejącym .htaccess — jeśli w pliku są już reguły, dyrektywa RewriteBase albo inne przekierowania, wklejony blok może zmienić ich działanie lub zostać przez nie przechwycony.
  • Nie obsługuje logiki warunkowej — przekierowania zależne od języka przeglądarki, geolokalizacji, metody POST czy konkretnych parametrów zapytania wymagają ręcznego dopisania warunków, których prosty generator nie tworzy.

Najczęstsze pytania

Dlaczego lepiej unikać łańcuchów przekierowań?

Każde ogniwo opóźnia stronę i rozprasza „moc” SEO. Przekierowuj od razu na docelowy adres.

Czy przekierowanie działa dla HTTPS?

Docelowy adres powinien być pełnym URL z https. Warto też wymusić HTTPS na całej witrynie osobną regułą.

Po co druga wersja z mod_rewrite?

Some serwery mają wyłączony mod_alias. Wersja RewriteRule działa dzięki mod_rewrite i bywa bardziej elastyczna.

Czy przekierowanie 301 można cofnąć?

Regułę w pliku .htaccess możesz zmienić od razu, ale skutki trwałego przekierowania zostają w przeglądarkach i robotach. Część użytkowników może trafiać na stary adres docelowy, dopóki nie wyczyści pamięci podręcznej, dlatego 301 warto wdrażać dopiero po testach.

Czy RedirectMatch zachowuje parametry z adresu?

Nie w sposób automatyczny. Grupa przechwytująca obejmuje tylko część ścieżki, a parametry po znaku zapytania trzeba dopisać ręcznie albo użyć wariantu na mod_rewrite z flagą QSA, która dołącza oryginalne parametry do adresu docelowego.

Jak przekierować wiele różnych adresów na jeden wspólny?

Dodaj osobną regułę dokładną dla każdego adresu źródłowego, wszystkie ze wskazaniem tego samego adresu docelowego. Wzorzec katalogowy nie zadziała, jeśli adresy źródłowe leżą w różnych, niepowiązanych ścieżkach.

Czy mogę przekierować subdomenę na inną domenę?

Tak, pod warunkiem że subdomena ma własny katalog z plikiem .htaccess i wpis w konfiguracji DNS. Reguła działa wtedy w obrębie tej subdomeny, a nie całego serwera, więc nie zastąpi zmian po stronie głównej domeny.

Czy reguła .htaccess zadziała na serwerze Nginx?

Nie. Plik .htaccess obsługuje Apache oraz serwery, które go emulują. Nginx ma własny format konfiguracji i wymaga zapisania przekierowania w bloku server lub location, więc wygenerowany kod trzeba przetłumaczyć ręcznie.

Zainstaluj Webp.pl Miej narzędzia we własnej kieszeni!