Generator pliku .htaccess
Generuj reguły .htaccess dla Apache: przekierowania 301/302, URL rewriting, ochrona hasłem, HTTPS redirect, custom error pages. Bezpłatnie.
-
1Wprowadź dane
Wpisz treść, wklej tekst lub załaduj plik z dysku. -
2Kliknij przycisk
Narzędzie natychmiast przetworzy Twoje dane w przeglądarce. -
3Pobierz wynik
Skopiuj gotowy tekst lub zapisz plik na urządzeniu.
return "Wynik gotowy w 0.1s";
}
Oceń to narzędzie:
Powiązane narzędzia
Inne narzędzia, które mogą Ci się przydaćGenerator .htaccess – Apache mod_rewrite i przekierowania
Plik .htaccess (Hypertext Access) to konfiguracja Apache na poziomie katalogu – bez dostępu do głównego httpd.conf. Generator tworzy gotowe reguły dla najczęstszych zastosowań: przekierowania, URL rewriting, ochrona dostępu i nagłówki bezpieczeństwa.
Podstawy pliku .htaccess
Lokalizacja: w katalogu webroot (public_html) lub podkatalogach. Zakres: działa dla danego katalogu i podkatalogów. AllowOverride: musi być włączone w httpd.conf (AllowOverride All). Wykonanie: Apache parsuje przy każdym żądaniu (uwaga: wydajność!). Format: dyrektywy Apache, komentarze z #. Najczęstsze moduły: mod_rewrite, mod_auth, mod_headers.
Przekierowania 301 i 302
301 Permanent: SEO-friendly, zmień URL na stałe. Redirect 301 /old-page.html /new-page. RewriteRule ^old-page$ /new-page [R=301,L]. 302 Temporary: bez wpływu na SEO, tymczasowe. Redirect 302 /promo /landing. HTTPS redirect: RewriteCond %{HTTPS} off → RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]. www → non-www: RewriteCond %{HTTP_HOST} ^www\.
URL Rewriting – przyjazne adresy
mod_rewrite: zamienia czytelne URL na query string. RewriteEngine On (wymagane). RewriteRule ^artykul/([0-9]+)$ index.php?id=$1 [L]. CMS: WordPress używa RewriteRule ^index\.php$ - [L] + RewriteRule . /index.php [L]. Laravel/Symfony: RewriteRule ^ index.php [L]. Flagi: [L]=last, [R]=redirect, [QSA]=query string append, [NC]=case insensitive.
Bezpieczeństwo przez .htaccess
Ochrona hasłem (Basic Auth): AuthType Basic + AuthName + AuthUserFile /path/.htpasswd + Require valid-user. Blokowanie IP: Deny from 192.168.1.1. Ochrona pliku:
Najczęstsze pytania
Jak wykonać przekierowanie HTTPS przez .htaccess?
RewriteEngine On. RewriteCond %{HTTPS} off. RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]. Dla serwerów za proxy/load balancer: RewriteCond %{HTTP:X-Forwarded-Proto} !https. Sprawdź w przeglądarce przez DevTools (Network): kod 301 i nagłówek Location. Po wdrożeniu HTTPS: wyczyść cache przeglądarki (Ctrl+Shift+Del).
Jak chronić katalog hasłem?
htpasswd -c /home/user/.htpasswd username (utwórz plik). htpasswd /home/user/.htpasswd username2 (dodaj). .htaccess: AuthType Basic, AuthName "Restricted Area", AuthUserFile /bezwzgledna/sciezka/.htpasswd, Require valid-user. UWAGA: .htpasswd poza webroot (żeby nie był dostępny publicznie). HTTPS + Basic Auth: szyfruje credentials.
Jak naprawić błąd 500 po edycji .htaccess?
Błąd składni w .htaccess = HTTP 500. Sprawdź: error_log Apache (często /var/log/apache2/error.log). Tymczasowo: zmień nazwę na .htaccess.bak → sprawdź czy 500 znika. Debuguj linię po linii: zakomentuj # nową regułę. Walidator online: htaccess.madewithlove.com. Częste błędy: brak RewriteEngine On, zły path do AuthUserFile.
Jaka jest różnica między .htaccess a nginx.conf?
Apache: .htaccess (per-directory), httpd.conf (globalny). Nginx: brak .htaccess, wszystko w nginx.conf/vhost. Wydajność: .htaccess wolniejszy (parsowanie każdego żądania). Nginx: szybszy bo konfiguracja załadowana raz. Migracja Apache→Nginx: trzeba przepisać reguły. Nginx rewrite: location ~ ^/old/(.*)$ { return 301 /new/$1; }.
Jak ustawić custom error pages?
ErrorDocument 404 /404.html. ErrorDocument 500 /500.html. ErrorDocument 403 /forbidden.html. Pełna ścieżka: ErrorDocument 404 /errors/not-found.html. Dynamic 404 (PHP): ErrorDocument 404 /404.php. Sprawdź: wejdź na nieistniejący URL. Ważne: błąd 404 powinien zwracać status 404 (nie 200 – soft 404 jest zły dla SEO).
Powiązane narzedzia: tester .htaccess, generator nginx config i analizator nagłówków HTTP.