Wymuszenie HTTPS w pliku .htaccess
Jeśli chcesz, aby odwiedzający zawsze trafiali na bezpieczną wersję strony, ale ustawienie w panelu nie pasuje lub używasz własnych reguł, przekierowanie na HTTPS możesz wpisać bezpośrednio w pliku .htaccess.
Czego potrzebujesz przed rozpoczęciem
- Usługi hostingu stron z serwerem Apache lub LiteSpeed.
- Zainstalowanego certyfikatu SSL dla domeny.
- Dostępu do plików przez menedżer plików DirectAdmin lub klienta FTP.
Włączanie HTTPS
-
Upewnij się, że masz certyfikat SSL
Bez certyfikatu przekierowanie na https:// pokaże błąd. Jeśli jeszcze go nie masz, zainstaluj go za darmo: Jak zainstalować darmowy certyfikat SSL.
Czy na pewno potrzebujesz .htaccess?Najprostszym sposobem jest zaznaczenie Force SSL with https redirect w ustawieniach SSL. Plik .htaccess wybierz wtedy, gdy potrzebujesz własnych reguł, np. przekierowania razem z www lub bez niego.
-
Otwórz plik .htaccess
Plik znajduje się w katalogu public_html. Wybierz, jak go otworzysz:
W DirectAdmin przejdź do System Info & Files > File Manager i otwórz katalog public_html.
Menedżer plików w DirectAdmin. .htaccess jest plikiem ukrytym. Jeśli go nie widzisz, włącz wyświetlanie ukrytych plików lub utwórz nowy plik o tej nazwie.
W WinSCP lub FileZilla otwórz katalog public_html. Aby zobaczyć plik, włącz w ustawieniach wyświetlanie ukrytych plików.
-
Dodaj regułę przekierowania
Na początku pliku wklej ten kod:
RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]Nie powtarzaj RewriteEngine OnJeśli w pliku jest już linia RewriteEngine On, wklej tylko dwie pozostałe linie. Dwie takie linie mogą zepsuć wszystkie reguły.
Na stronie WordPress wklej regułę nad linią # BEGIN WordPress, ponieważ WordPress automatycznie nadpisuje swoją część.
-
Zapisz plik
Zapisz zmiany. Reguła zaczyna działać od razu, restart serwera nie jest potrzebny.
Czy się udało?
Otwórz swoją stronę w trybie incognito, wpisując na początku http://. Adres powinien automatycznie zmienić się na https://.
Jeśli strona się nie otwiera, natychmiast usuń dodane linie i sprawdź, czy certyfikat jest zainstalowany.
Częste pytania
Przeglądarka pokazuje „Too many redirects”
Najczęściej reguła jest w pliku dwa razy albo używasz Cloudflare w trybie Flexible SSL. W ustawieniach Cloudflare wybierz tryb Full (strict) i zostaw tylko jedną regułę przekierowania.
Nie mogę znaleźć pliku .htaccess
Nazwa pliku zaczyna się kropką, więc jest traktowany jako ukryty. Włącz wyświetlanie ukrytych plików lub po prostu utwórz nowy plik o nazwie .htaccess.
Jak jednocześnie przekierować adres z www?
Dodaj te linie pod główną regułą. Przekierują odwiedzających z www na adres bez www:
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [L,R=301]Czy to działa na serwerze LiteSpeed?
Tak. LiteSpeed i OpenLiteSpeed rozumieją te same reguły .htaccess co Apache, więc kodu nie trzeba zmieniać.
Strona się otwiera, ale przeglądarka nadal pokazuje „niezabezpieczona”
To mieszana zawartość: strona ładuje obrazy lub skrypty przez http://. W WordPressie zmień adres na https:// w ustawieniach i zaktualizuj linki w bazie danych.
Co dalej
Jeśli masz problemy, napisz do nas na czacie na żywo lub e-mailem.