Do czego służy to narzędzie
Generator .htaccess tworzy plik konfiguracyjny Apache do najczęstszych zadań: wymuszania HTTPS, wyboru między www.example.com a example.com, stałych przekierowań 301, własnej strony 404, kompresji gzip, cache przeglądarki, nagłówków bezpieczeństwa, CORS, ochrony przed hotlinkingiem obrazów i fallbacku dla aplikacji jednostronicowych (SPA).
Każda funkcja to przełącznik. Plik aktualizuje się, gdy zmieniasz opcje, zawiera krótkie komentarze objaśniające każdy blok i opakowuje reguły zależne od modułów w <IfModule>, aby strona działała dalej, gdy jakiegoś modułu brakuje.
Jak używać
- Wpisz swoją Domenę (potrzebną do reguł www i hotlinkingu).
- Włącz potrzebne funkcje. Wymuś HTTPS i Prefiks www są łączone w jedno przekierowanie, więc odwiedzający nigdy nie są przekierowywani dwukrotnie.
- Dodaj Przekierowania 301 jako pary
stary nowyrozdzielone;, na przykład/old-page /new-page; /blog https://blog.example.com. - Skopiuj wynik lub naciśnij Pobierz, aby zapisać go jako
.htaccess. - Wgraj go do katalogu głównego dokumentów strony i przetestuj kilka adresów URL, najlepiej najpierw na serwerze testowym.
Przykład
Wymuszenie HTTPS i usunięcie www dla example.com daje:
<IfModule mod_rewrite.c>
RewriteEngine On
# Force HTTPS and remove www
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^example\.com$ [NC]
RewriteRule ^ https://example.com%{REQUEST_URI} [L,R=301]
</IfModule>
Wskazówki
- Przekierowania 301 są cache’owane przez przeglądarki. Podczas testów używaj okna prywatnego lub wyczyść cache.
- Włącz HSTS (część nagłówków bezpieczeństwa, gdy HTTPS jest wymuszony) dopiero wtedy, gdy HTTPS działa na każdej subdomenie.
- Używaj fallbacku dla aplikacji SPA w aplikacjach React, Vue lub Angular korzystających z routingu po stronie klienta.
FAQ
› Gdzie umieścić plik .htaccess?
W katalogu głównym dokumentów twojej strony (folderze zawierającym index.html lub index.php) na serwerze Apache. Reguły dotyczą też wszystkich podfolderów.
› Czy to zadziała na Nginx?
Nie. Plik .htaccess odczytuje tylko Apache i zgodne serwery, takie jak LiteSpeed. Nginx wymaga zapisania tych samych reguł w jego własnej konfiguracji serwera.
› Dlaczego po wgraniu pliku dostaję błąd 500?
Zwykle moduł używany w pliku nie jest włączony. Każdy blok jest opakowany w <IfModule>, ale reguły mod_rewrite i Options -Indexes mogą i tak zawieść, gdy hosting blokuje je przez AllowOverride. Usuwaj sekcje po kolei, aby znaleźć winowajcę.
› Jak zapisywać przekierowania?
Wpisz pary: stara ścieżka i nowy URL, rozdzielone średnikami, na przykład /old /new; /blog https://blog.example.com. Każda para staje się stałym przekierowaniem 301.