Envato Elements - pobierasz co chcesz, ile chcesz

Wprawdzie jakiś czas temu przez internet przetoczyła się dyskusja, że „od teraz” Google będzie promować strony serwowane użytkownikom po SSL/HTTPS, a resztę czeka wielki i bolesny spadek w dół, to osobiście na kilku stronach które zostały bez SSL (z różnych przyczyn), a mają większość ruchu z wyszukiwarki nie zauważyłem jakiś różnic wskazujących na tego typu pogram.

Nie oznacza to, że mam coś przeciwko SSL – wręcz przeciwnie, wszędzie gdzie jest to uzasadnione (lub konieczne) korzystam z szyfrowanego połączenia, np. w panelu zarządzania/administrowania WordPressem (WP-Admin), i dziś chciałbym Wam właśnie pokazać, jak w prosty sposób można wymusić bezpieczne połączenie z nim…

WP-Admin i (wymuszone połączenie) SSL/HTTPS

Obecnie pozyskanie certyfikatu SSL dla strony/domeny nie dość, że może być w pełni bezpłatne, to jeszcze jest relatywnie proste i wygodne – niezależnie czy korzystacie z hostingu współdzielonego, czy serwera VPS.

Wystarczy wspomnieć o takich rozwiązaniach usługach jak Let’s Encrypt, CloudFlare Universal SSL, StartSSL, czy – w ostateczności – certyfikacie wygenerowanym samodzielnie (lub dostępnym w ramach konta hostingowego), który na własne potrzeby również będzie wystarczający, a w połączeniu z CloudFlare Universal SSL w trybie Flexible „jego mankament” będzie właściwie niedostrzegalny dla przeciętnego użytkownika Twojej strony.

Dlatego nie ma powodu, dla którego nie warto w ten sposób (dodatkowo) zabezpieczyć logowania/połączenia do panelu zarządzania/administrowania WordPressem.

Force SSL Admin

By wymusić (!) dostęp do panelu (i okna logowania) WordPressem wystarczy w pliku wp-config.php (plik znajduje się w głównym katalogu WordPressa) dodać jedną linijkę:

define('FORCE_SSL_ADMIN', true);

Zaletą tego rozwiązanie jest również to, że jakby coś było nie tak z połączeniem SSL z Waszą stroną, to wystarczy usunąć dodaną wcześniej linijkę, i strona powinna ponownie działać, tak jak wcześniej…

Ja zazwyczaj dodaje własne/dodatkowe zapisy tuż nad linijką:

/* To wszystko, zakończ edycję w tym miejscu! Miłego blogowania! */

Ew. w wersji angielskiej będzie to:

/* That's all, stop editing! Happy blogging. */

W tym miejscu chciałbym pozdrowić Marcina… ;-)

Kiedyś można było wymusić połączenie SSL tylko na stronie logowania:

define('FORCE_SSL_LOGIN', true);

Ale aktualnie – od wersji WP 4.0 – obsługa tego parametru została zaniechana.

Infinite redirect loop, czyli pętla śmierci

W większości przypadków podane rozwiązanie wystarczy, od tego momentu panel zarządzania WordPressem powinien być dostępny tylko i wyłącznie w ramach połączenia szyfrowanego (w przypadku certyfikatu podpisanego samodzielnie może być jeszcze wymagana akceptacja połączenia w przeglądarce, gdyż połączenie/certyfikat może zostać zgłoszony jako niezaufany).

Ale czasem – zwłaszcza w przypadku hostingu – może się zdarzyć, że zamiast panelu zarządzania lub okna logowania zobaczycie w przeglądarce komunikat błędu, np. w Firefoxie wygląda on tak:

firefox_redirect-loop

Nieprawidłowe przekierowanie

Firefox wykrył, że serwer przekierowuje żądanie tego zasobu w sposób uniemożliwiający jego ukończenie.

  • Problem ten może się pojawić w wyniku zablokowania lub odrzucenia ciasteczek.

Rozwiązaniem będzie dodanie w pliku wp-config.php – np. poniżej linijki wymuszającej połączenie SSL z panelem zarządzania – tych 2 linijek:

if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false)
$_SERVER['HTTPS']='on';

Oczywiście nie ma gwarancji, że to zadziała na pewno, ale do tej pory nie trafiłem na hosting, w którym to by nie zadziałało – a miałem bezpośrednio lub pośrednio konta hostingowe chyba u większości najpopularniejszych dostawców, a przynajmniej w kraju.

Jeśli jednak w Waszym przypadku byłoby inaczej, to albo piszcie w komentarzach i/lub zerknijcie na stronę poświęconą administracji po SSL w Codexie WordPressa, gdzie znajdziecie dodatkowe informacje związane z tym tematem, w tym m.in. gotowe reguły do pliku .htaccess (Apache2).

(!) Zgłoś błąd na stronie
Potrzebujesz profesjonalnej pomocy? Skontaktuj się z nami!
Spodobał Ci się artykuł? Zapisz się do naszego Newslettera - ZERO SPAMu, same konkrety, oraz dostęp do dodatkowych materiałów przeznaczonych dla subskrybentów!
Na podany adres e-mail otrzymasz od nas wiadomość e-mail, w której znajdziesz link do potwierdzenia subskrypcji naszego Newslettera. Dzięki temu mamy pewność, że nikt nie dodał Twojego adresu przez przypadek. Jeśli wiadomość nie przyjdzie w ciągu najbliższej godziny (zazwyczaj jest to maksymalnie kilka minut) sprawdź folder SPAM.
Janusz i Janusz skorzystali z promocji dla czytelników WebInsider.pl i zapłacili 80% mniej za księgowość internetową wFirma
WebInsider poleca księgowość wFirma
WebInsider korzysta z VPSa w HitMe.pl
WebInsider poleca VPSy DigitalOcean
WebInsider poleca serwis Vindicat
Napisz komentarz
wipl_napisz-komentarz_01Jeśli informacje zawarte na tej stronie okazały się pomocne, możesz nam podziękować zostawiając poniżej swój komentarz.

W tej formie możesz również zadać dodatkowe pytania dotyczące wpisu, na które – w miarę możliwości – spróbujemy Ci odpowiedzieć.
Linki partnerskie
Niektóre z linków na tej stronie to tzw. „linki partnerskie”, co oznacza, że jeśli klikniesz na link i dokonasz wymaganej akcji (np. zakup/rejestracja) możemy otrzymać za to prowizję. Pamiętaj, że polecamy tylko te produkty i usługi, z których sami korzystamy, i uważamy, że są tego na prawdę warte… :-)
Znaki towarowe i nazwy marek
W niektórych wpisach (oraz innych miejscach na stronie) mogą być przedstawione/użyte znaki towarowe i/lub nazwy marek, które stanowią własność intelektualną tych podmiotów, a zostały użyte wyłącznie w celach informacyjnych.
Roztańczona Karolina dzięki motywowi Divi od Elegant Themes właśnie skończyła pierwszą stronę