Strona główna  /  Bezpieczeństwo  /  Co zrobić, gdy SSL nie działa w WordPress?

✦ AI
Świecąca cyfrowa kłódka nad klawiaturą, symbolizująca bezpieczne połączenie SSL w witrynie WordPress.

Co zrobić, gdy SSL nie działa w WordPress?

Jeśli certyfikat SSL jest aktywny na serwerze, ale WordPress nadal otwiera stronę przez HTTP, brakuje konfiguracji po stronie aplikacji. Zmień adresy witryny na HTTPS, ustaw przekierowanie 301 i zaktualizuj stare odnośniki w bazie danych. To także najczęstsza droga do usunięcia błędu mieszanej zawartości.

Co dokładnie nie działa?

Objaw pozwala zawęzić przyczynę. Poniższa tabela pokazuje, od czego zacząć:

Objaw Możliwa przyczyna Rozwiązanie
Brak kłódki przy adresie strony WordPress lub część zasobów nadal korzysta z HTTP Przełącz adresy witryny na HTTPS i popraw odnośniki
Komunikat o mieszanej zawartości Obrazy, arkusze CSS, skrypty albo fonty są ładowane przez HTTP Wykonaj zamianę adresów w bazie danych i sprawdź zasoby zewnętrzne
Błąd 404 po włączeniu HTTPS Nieprawidłowe przekierowanie, reguły serwera albo permalinki Sprawdź plik .htaccess i zapisz ponownie ustawienia bezpośrednich odnośników
Strona nie ładuje się przez HTTPS Certyfikat nie obejmuje domeny albo serwer nie obsługuje poprawnie HTTPS Skontaktuj się z hostingiem przed zmianami w WordPressie

Jak ręcznie skonfigurować SSL w WordPress?

Ręczna konfiguracja jest trwalsza niż stałe podmienianie adresów przez wtyczkę. Wymaga kilku zmian, ale po ich zapisaniu WordPress nie musi wykonywać dodatkowej pracy przy każdym ładowaniu strony.

Przed rozpoczęciem przygotuj:

  • Kopię zapasową plików WordPressa i bazy danych.
  • Dostęp administratora do panelu WordPressa.
  • Dostęp do plików serwera przez FTP lub menedżer plików hostingu.
  • Adres domeny w obu wersjach, na przykład http://twojadomena.pl i https://twojadomena.pl.

Przed uruchomieniem zamiany adresów wykonaj backup bazy danych. Błędna wartość w narzędziu do masowej podmiany może uszkodzić konfigurację witryny, a przywrócenie kopii będzie wtedy najszybszym sposobem naprawy.

  1. Zmień adresy w ustawieniach WordPressa – przejdź do Ustawienia → Ogólne. W polach „Adres WordPressa (URL)” i „Adres witryny (URL)” zamień prefiks http:// na https://, a następnie zapisz zmiany.
  2. Ustaw przekierowanie 301 – połącz się z serwerem i otwórz plik .htaccess w głównym katalogu WordPressa. Przed standardowymi regułami WordPressa dodaj:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>

Przekierowanie 301 kieruje użytkowników oraz roboty z wersji HTTP na HTTPS. Przed zapisaniem upewnij się, że plik nadal nazywa się dokładnie .htaccess, a edytor nie dodał rozszerzenia .txt.

Jeżeli serwer korzysta z nginx, plik .htaccess nie będzie obsługiwany. W takim przypadku regułę przekierowania trzeba ustawić w konfiguracji serwera albo w panelu hostingu.

  1. Zamień stare adresy w bazie danych – zainstaluj tymczasowo wtyczkę Better Search Replace, przejdź do Narzędzia → Better Search Replace i wpisz pełny adres witryny z HTTP w polu „Search for”, a jego wersję z HTTPS w polu „Replace with”.
  2. Wybierz tabele bazy danych – zaznacz wszystkie tabele, najpierw uruchom test „dry run”, a dopiero po sprawdzeniu wyników wykonaj właściwą zamianę. Nie zmieniaj adresu na sam prefiks, jeśli nie jest to konieczne. Pełny adres domeny ogranicza ryzyko modyfikacji obcych wartości.
  3. Usuń narzędzie po zakończeniu – po potwierdzeniu poprawnego działania strony wyłącz i usuń Better Search Replace. Jest potrzebne do jednorazowej migracji adresów, a nie do stałej pracy witryny.

Jeżeli używasz Elementora, sprawdź także jego narzędzie do zamiany adresów URL. Page builder może przechowywać adresy obrazów, przycisków i teł niezależnie od zwykłych ustawień WordPressa.

Czy wtyczka Really Simple SSL wystarczy?

Really Simple SSL może być wygodnym rozwiązaniem dla osoby, która nie chce edytować plików i bazy danych. Traktuj ją jednak jako skrót lub pomoc przy migracji, a nie zamiennik poprawnej konfiguracji.

Wtyczka może wykrywać zasoby ładowane przez HTTP i podmieniać ich adresy podczas generowania strony. Przy większej liczbie elementów oznacza to dodatkową pracę przy kolejnych żądaniach, a czasem także problemy z pamięcią podręczną lub kompatybilnością. Ręczna zmiana adresów zapisuje poprawną konfigurację na stałe i ogranicza zależność od dodatkowego rozszerzenia.

Co sprawdzić po wdrożeniu SSL?

Po zmianach wykonaj końcową kontrolę:

  • Otwórz stronę w oknie incognito i sprawdź, czy adres zaczyna się od https://.
  • Wejdź na wersję HTTP i sprawdź, czy następuje przekierowanie 301 do HTTPS.
  • Otwórz kilka podstron oraz narzędzia deweloperskie przeglądarki i sprawdź, czy nie ma komunikatów o mixed content.
  • Wyczyść cache WordPressa, wtyczki optymalizującej, serwera i przeglądarki.
  • Jeśli korzystasz z Elementora, wyczyść jego pliki CSS i pamięć podręczną.
  • Dodaj wersję HTTPS witryny do Google Search Console i przeprowadź wymaganą weryfikację własności.

W Google Search Console adres z HTTPS może być traktowany jako osobna wersja witryny. Jeśli wcześniej używałeś wariantów z „www” i bez „www”, dodaj odpowiedni wariant HTTPS dla każdej skonfigurowanej właściwości.

Jeżeli po zmianach pojawi się błąd 500, 404 albo całkowita niedostępność strony, przywróć kopię zapasową i sprawdź konfigurację serwera. Przy nginx, instalacji Multisite lub nietypowych regułach hostingu lepiej poprosić administratora o weryfikację przed kolejnymi zmianami.

Redakcja wpinternals.pl

WordPressa znamy od kuchni – budujemy na nim strony, migrujemy serwisy i optymalizujemy ich wydajność. Piszemy o wtyczkach, motywach, hostingu i bezpieczeństwie tak, by poradzili sobie także początkujący. Dbamy o to, by Twoja strona była szybka, stabilna i bezpieczna.

Może Cię również zainteresować

Potrzebujesz więcej informacji?