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).

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.
Monika ćwiczy przed kongresem ko..., ale dzięki motywowa Divi od Elegant Themes chyba nawet ona da radę...
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.
Młody Szymon powiedział tacie o promocji dla czytelników WebInsider.pl i zaoszczędzili 80% na księgowości internetowej wFirma