Jak wykonać przekierowanie z HTTP na HTTPS w WordPress

Miałeś sytuację, że wykupiłeś lub zainstalowałeś dla swojej strony płatny bądź darmowy certyfikat SSL dla Twojej domeny i nie wiedziałeś, w jaki sposób zrobić poprawne przekierowanie protokołu HTTP na HTTPS?

Ten artykuł jest właśnie dla Ciebie!

Dowiesz się z niego jak w poprawny sposób wdrożyć przekierowanie domeny z HTTP na HTTPS w kilku krokach.

Zaczynajmy!

Certyfikat SSL — prowodyr całego zamieszania.

Na samym początku należy zdać sobie sprawę z tego, że korzystając z różnego rodzaju stron internetowych, przesyłamy nasze dane między naszą przeglądarką a serwerem witryny.

Kiedy ma to miejsce? Dane przesyłane są m.in. podczas zakładania konta w sklepie e-commerce, podczas przekazywania danych do wysyłki zamówionego towaru czy podczas korzystania z wyszukiwarki na stronie.

Dlatego też tak ważne jest, aby zapewnić bezpieczeństwo danych. W tym celu wykorzystywany jest właśnie certyfikat SSL oraz protokół HTTPS.

Certyfikat SSL przypisywany jest do konkretnej domeny. Jeśli do Twojej witryny zostanie wygenerowany i wdrożony certyfikat z błędną domeną, to przeglądarka będzie informowała o tym odwiedzających, a w niektórych przypadkach zablokuje dostęp do strony całkowicie.

Czym jest protokół HTTPS?

HTTPS od ang. Hypertext Transfer Protocol Secure to chroniony protokół HTTP. Ochrona zapewniana jest przez szyfrowanie protokołu TLS (dawniej SSL). Dzięki szyfrowaniu komunikacji, jej przechwycenie między serwerem a klientem lub jej modyfikacja ma być niemożliwa.

Wybór certyfikatu SSL — różnice między rodzajami certyfikatów.

Do wyboru mamy certyfikaty różnych klas różniące się m.in. sposobem weryfikacji oraz zakresem bezpieczeństwa.

Darmowy certyfikat Let’s Encrypt!

Darmowy certyfikat SSL klasy DV wydawany przez organizację non-profit – Let’s Encrypt, która prowadzona jest przez Internet Security Research Group (ISRG).

Na chwilę obecną certyfikaty te są respektowane przez wszystkie znane przeglądarki takie jak Google Chrome.

Płatny certyfikat klasy DV (Domain Validation).

Certyfikat klasy DV jest najprostszym z certyfikatów. Gwarantuje on szyfrowanie informacji w obrębie certyfikowanej domeny.

Podczas wystawiania certyfikatu SSL weryfikowany jest plik CSR pod kątem danych abonenta i ich zgodnością z bazą WHOIS oraz sprawdza domenę, czy została pod nią opublikowana strona www.

Certyfikaty SSL tej klasy to m.in.:

  • zabezpieczenie przed phishingiem,
  • zabezpieczenie przed podsłuchaniem transmisji przez osoby trzecie,
  • zautomatyzowana weryfikacja firmy występującej o certyfikat bez przesyłania dokumentów,
  • brak informacji o firmie w informacji o certyfikacie.

Płatny certyfikat klasy OV (Organization Validation).

Następnym w hierarchii jest certyfikat klasy OV. Również gwarantuje on szyfrowanie informacji w obrębie certyfikowanej domeny.

Podczas wydawania certyfikatu SSL dodatkowo weryfikowana jest firma wnioskująca o jego wydanie. Kolejną zmianą jest widoczność nazwy firmy w szczegółach wystawionego certyfikatu SSL.

Klasę OV charakteryzuje:

  • weryfikacja nie tylko domeny, ale również pełna weryfikacja firmy wnioskującej,
  • informacja o firmie w certyfikacie.

Płatny certyfikat klasy EV (Extended Validation).

Klasa EV to najwyższa forma certyfikatu SSL. Wyróżnia się silniejszą weryfikacją firmy występującą o jego wydanie oraz dodatkowym oznaczeniem kolorem zielonym w pasku adresu przeglądarki.

Podczas weryfikacji dokonuje się pełnej weryfikacji firmy wnioskującej nie tylko elektronicznie, ale również telefonicznie oraz na podstawie dokumentów takich jak np. KRS.

Klasa EV to:

  • pełna weryfikacja firmy wnioskującej,
  • dodatkowy prestiż,
  • zielony pasek adresu w przeglądarce internetowej,
  • możliwość wykorzystania szyfrowania do 256-bit w zależności od możliwości, jakie ma serwer, na którym umieszczona jest strona.

Certyfikat jest również czynnikiem rankingowym, dlatego warto zadbać o poprawne jego wdrożenie.

Jak ustawić przekierowanie HTTP na HTTPS?

Gdy wiesz już, z czym masz do czynienia, możesz zająć się wdrażaniem przekierowania strony z przedrostkiem HTTPS na wersję z przedrostkiem HTTPS.

Samo przekierowanie strony do wersji HTTPS nie wystarczy.

WordPress generując linki w obrębie podstron (i nie tylko) wstawia do nich aktualną domenę. Dlatego też tworząc samo przekierowanie, część zasobów będzie generowała tzw. Mixed-Content. Dzieje się tak, ponieważ w źródle strony nadal będą ładowane zasoby z przedrostkiem HTTP, nieużywające protokołu HTTPS.

Często serwery proponują również wymuszenie przekierowania na wersję HTTP, co z kolei może powodować łańcuch przekierowań, a w skrajnych sytuacjach pętlę przekierowań na naszej stronie, co spowoduje brak możliwości wejścia na stronę www.

Dlatego też proponuję ustawić przekierowanie z wersji HTTPS na wersję HTTP na jeden z poniższych sposobów.

UWAGA!!! Przed wykonaniem jakichkolwiek działań wykonaj kopię zapasową WordPress. Każda instalacja WordPress jest inna i może zawierać moduły, które będą wymagały dodatkowej pracy, aby SSL działał poprawnie.

Prosty sposób przekierowania strony za pomocą wtyczki Really Simple SSL (nierekomendowany).

Jednym z najprostszych sposobów na poprawne wykonanie przekierowania jest użycie wtyczki Really Simple SSL.

Aby zainstalować wtyczkę:

  1. Zaloguj się do Dashboard’u WordPress’a.
  2. Wybierz z menu po lewej stronie opcję Wtyczki — Dodaj nową.
  3. Do wyszukiwarki katalogu wtyczek wpisz: Really Simple SSL.
  4. Kliknij przycisk Zainstaluj.
  5. Po poprawnej instalacji przycisk Zainstaluj zmieni się w przycisk Włącz — kliknij go i zaczekaj na aktywację.

Po poprawnej aktywacji wtyczki:

  1. Przejdź do zakładki Ustawienia — SSL.
  2. Kliknij przycisk Aktywuj SSL.
  3. W popupie który się pojawi, kliknij Aktywuj SSL.
  4. Następnie w tym samym oknie kliknij Skip.
  5. W ostatnim już kroku w ramach popupu kliknij Przejdź do kokpitu.

W ten sposób wdrożyłeś poprawnie przekierowanie HTTP na HTTPS.

Zaawansowany sposób przekierowania strony za pomocą zmian w ustawieniach WordPress, kodzie strony oraz pliku .htaccess.

Poprawne przekierowanie strony wymaga wykonania kilku kroków.

Pamiętaj, aby ustawić przekierowanie dopiero wtedy, gdy certyfikat jest już zainstalowany dla Twojej domeny, a wymuszenie przekierowania jest wyłączone na hostingu!

Zmiana ustawień CMS WordPress

WordPress potrzebuje wiedzieć o tym, że ma załadować wersję HTTPS. W tym celu musimy zmienić adres strony na wersję z certyfikatem SSL.

  1. Zaloguj się do Dashboard’u WordPress’a.
  2. Przejdź do zakładki Ustawienia — Ogólne.
  3. Zamień protokół HTTPS na protokół HTTPS modyfikując adresy www w polach:
    1. Adres WordPressa (URL).
    2. Adres witryny (URL).
  4. Kliknij Zapisz zmiany na dole strony.

Strona wymaga ponownego wygenerowania linkowania wewnętrznego. Aby usprawnić ten proces, należy wykonać kolejny krok.

Ponowne wygenerowanie linków

Następnym krokiem jest nadpisanie linkowania wewnętrznego. Aby to zrobić:

  1. Przejdź do zakładki Ustawienia — Bezpośrednie odnośniki.
  2. Kliknij przycisk Zapisz zmiany na dole strony.
  3. Ponownie kliknij przycisk Zapisz zmiany na dole strony.

Niestety nie w każdym przypadku ponowne wygenerowanie linków wewnętrznych zaktualizuje je całkowicie. Dlatego też w kolejnym kroku ponownie wykonamy zamienianie adresów z HTTP na HTTPS. Tym razem podmiana nastąpi w bazie danych.

Zamiana protokołów w bazie danych

Podmiana adresu strony bezpośrednio w bazie na hostingu jest czynnością niebezpieczną. Dlatego warto zaopatrzyć się we wtyczkę WP Migrate Lite.

Wtyczkę należy zainstalować w analogiczny sposób jak w sposobie pierwszym pisując nazwę wtyczki na WP Migrate Lite – WordPress Migration Made Easy w wyszukiwarce wtyczek WordPress’a.

Po zainstalowaniu i aktywacji wtyczki:

  1. Przejdź do zakładki Narzędia — WP Migate.
  2. Na nowo otwartej podstronie kliknij Migate.
  3. Następnie kliknij Find & Replace.
  4. Na kolejnym ekranie w pole FIND wpisz adres stronę bez protokołu HTTPS np. http://adresstronywww.pl.
  5. Następnie w pole REPLACE wpisz adres strony zawierający protokół HTTPS np. https://adressstronywww.pl.
  6. Kliknij przycisk Preview Changes.
  7. Zaczekaj na załadowanie się informacji (w zależności od rozbudowania strony może potrwać to od kilku do kilkudziesięciu sekund) o wynikach wyszukiwania.
  8. Kliknij przycisk Apply Changes.
  9. Zaczekaj na pojawienie się komunikatu Find & Replace Complete.

Poprawa plików szablonu

Sprawdź wszystkie pliki szablonu, począwszy od plików CSS, poprzez pliki JS i PHP.

Zamień wszystkie znalezione warianty adresu www z HTTP np. http://adresstronywww.pl na wersję z HTTPS np. https://adressstronywww.pl.

Modyfikacja pliku .htaccess

Wykonaj kopię aktualnego pliku .htaccess

Otwórz plik i na samej górze pliku następujący zapis przekierowania:

Jeśli finalny adres Twojej witryny www z użyciem subdomeny www, wklej kod:

RewriteEngine On

RewriteCond %{HTTP_HOST} !^www.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{HTTPS}  off
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

Jeśli finalny adres Twojej strony www bez subdomeny www, wklej kod:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{HTTPS}  off
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

Zapisz zmiany i sprawdź poprawność działania strony www.

Jeśli Twoja strona www nie jest specyficznym przypadkiem, nie zawiera indywidualnych modyfikacji i jest poprawnie zbudowaną stroną www na WordPress’ie to od tego momentu przekierowanie w pliku .htaccess strony powinno działać w 100% prawidłowo.

Przekierowanie strony i SEO

Warto pamiętać o Google, czyli o optymalizacji SEO. Modyfikacja adresu witryny z HTTP na HTTPS ma również wpływ na SEO i pojawianie się strony w Internecie — szczególnie wynikach wyszukiwania Google. Dlatego też ważną kwestią jest aktualizacja linków przychodzących z wersji HTTP na HTTPS np. linki w wizytówce w Mapach Google.

Podsumowanie

Proces poprawnego wdrożenia przekierowania niestety jest dość skomplikowany i jego powodzenie zależne jest od wielu czynników. Jeśli w przypadku witryny przekierowanie nie działa poprawnie, po zastosowaniu powyższych wskazówek, poinformuj nas. Z chęcią profesjonalnie zajmiemy się stroną oraz wykonamy dla Ciebie usługę przekierowania HTTP na HTTPS.

5/5 - (2 głosów)

Możesz również polubić…