Generator przekierowań .htaccess
Za każdym razem, gdy migrujesz bloga, zmieniasz schemat URL albo łączysz stare strony, .htaccess Apache bierze na siebie ciężar porządkowania. Ten generator zamienia proste mapowanie źródło → cel na poprawne dyrektywy RewriteRule z właściwymi flagami, gotowe do wrzucenia do pliku .htaccess witryny.
Jak wygenerować reguły przekierowania
-
1
Wybierz typ przekierowania
301 stałe dla przenosin bezpiecznych dla SEO, 302 tymczasowe dla testów A/B i przekierowań sezonowych.
-
2
Wpisz źródło i cel
Dokładne ścieżki albo wzorce regex: stara ścieżka staje się wzorcem RewriteRule, a nowy URL celem przekierowania.
-
3
Sprawdź flagi
Każda reguła automatycznie dostaje właściwą flagę, `[R=301,L]` albo `[R=302,L]`, więc blok od razu działa z mod_rewrite.
-
4
Skopiuj dyrektywy
Wygenerowany blok trafia do sekcji `<IfModule mod_rewrite.c>` pliku .htaccess.
Dyrektywy mod_rewrite kontra mod_alias
Apache oferuje dwa moduły do przekierowań. Wybierz na podstawie złożoności reguły.
Przewodnik decyzyjny
| Wymaganie | Użyj | Przykład |
|---|---|---|
| Dokładny stary URL → dokładny nowy URL | Redirect |
Redirect 301 /old /new |
| Prefiks wieloznaczny | RedirectMatch |
RedirectMatch 301 ^/blog/(.*)$ /articles/$1 |
| Dopasowanie ciągu zapytania | RewriteRule |
Zobacz niżej |
| Wymuszenie HTTPS | RewriteRule |
RewriteCond %{HTTPS} off + reguła |
| Warunkowe (przeglądarka, cookie) | RewriteRule |
Z RewriteCond |
Przykład: wymuś HTTPS z www
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Przykład: przenieś /blog/post-123 do /articles/post-123
RewriteEngine On
RewriteRule ^blog/(.*)$ /articles/$1 [L,R=301]
Flagi, które zobaczysz
L, ostatnia, nie kontynuuj przetwarzania kolejnych reguł.R=301lubR=302, przekierowanie z tym kodem statusu.NC, bez rozróżniania wielkości liter.QSA, dołącz oryginalny ciąg zapytania do nowego URL.NE, nie koduj ponownie znaków specjalnych w celu.
Częste błędy
- Zapomnienie o
RewriteEngine On, bez tego żadna RewriteRule nie ma żadnego efektu. - Domyślne używanie 302, Google traktuje je jako tymczasowe, więc stary URL nadal się pozycjonuje.
- Łańcuchowe przekierowania (stary → pośredni → końcowy), zawsze dąż do pojedynczego przeskoku; każdy dodatkowy przeskok traci moc linków i dodaje opóźnienie.
Najczęściej zadawane pytania
Użyj 301 dla przenosin trwałych: migracja witryny, zmiana sluga URL, wymuszenie HTTPS. Użyj 302 tylko w sytuacjach tymczasowych, jak kierowanie na stronę konserwacji albo podział A/B. Wyszukiwarki przenoszą sygnały rankingowe przy 301, a przy 302 niekoniecznie.
Najczęstszą przyczyną jest zapomnienie o wiodącym ukośniku we wzorcu. W RewriteRule wzorzec pasuje do ścieżki bez wiodącego ukośnika (np. ^blog/). W Redirect (mod_alias) wzorzec zaczyna się od ukośnika (/blog). Nie mieszaj tych dwóch konwencji.
Tak, użyj RewriteCond %{QUERY_STRING} ^id=123$ przed RewriteRule. Zwykłe Redirect nie czyta ciągu zapytania; tylko RewriteRule może na nim dopasowywać.
Tak, przy następnym żądaniu, Apache odczytuje .htaccess na każde żądanie. Nie trzeba restartować serwera. Jeśli nic się nie dzieje, sprawdź, czy w vhoście dla katalogu ustawiono AllowOverride All.
Powiązane narzędzia
Tabela ASCII
Pełna tabela ASCII od 0 do 127 z zapisem dziesiętnym, szesnastkowym, ósemkowym i binarnym oraz notacją numerycznych odwołań HTML, w tym kodami sterującymi NUL, LF i DEL.
Referencja znaków HTML
Przeszukiwalna lista encji HTML wraz z ich kodami nazwanymi i liczbowymi oraz kopiowaniem jednym kliknięciem specjalnych znaków i symboli.
Skróty klawiaturowe
Wyszukuj udokumentowane skróty domyślne VS Code, Chrome i Bash z GNU Readline w macOS, Windows i Linux.
Generator EditorConfig
Wygeneruj plik .editorconfig z własnymi regułami stylu i rozmiaru wcięć, końca linii, kodowania i białych znaków, aby uzyskać spójne formatowanie w różnych IDE i edytorach.
Walidator adresów e-mail
Zweryfikuj adres e-mail: sprawdzenie składni RFC 5322, sprawdzenie rekordu MX w czasie rzeczywistym oraz szczegóły dotyczące części lokalnej, domeny i długości. Żadna wiadomość nie jest wysyłana.
Formatowanie HTML
Formatuj HTML lokalnie w przeglądarce, używając wcięć dwóch lub czterech spacji. HTML nie jest wysyłany ani walidowany.
Narzędzie jest dostępne w innych językach
- Gerador de Redirecionamento Htaccess [PT]
- Bộ tạo đường dẫn chuyển hướng Htaccess [VI]
- Generador de redirección Htaccess [ES]
- Htaccessリダイレクトジェネレータ [JA]
- مولد إعادة توجيه Htaccess [AR]
- Htaccess-omdirigeringsgenerator [SV]
- Générateur de redirection Htaccess [FR]
- Htaccess Weiterleitungs-Generator [DE]
- ตัวสร้าง Redirect สำหรับ Htaccess [TH]
- Htaccess 리다이렉트 생성기 [KO]
- Htaccess-redirectgenerator [NL]
- Generator Redireksi Htaccess [ID]
- Генератор перенаправлений для Htaccess [RU]
- Htaccess Yönlendirme Oluşturucu [TR]
- Htaccess重定向生成器 [ZH]
- Htaccess Redirect Generator [EN]
- Generatore di Redirect Htaccess [IT]