Strona główna  /  Hosting i domeny  /  Jak naprawić błędy SSL w WordPress?

✦ AI
Świecąca na zielono kłódka symbolizująca bezpieczne połączenie SSL oraz naprawiany cyfrowy łańcuch w serwerowni.

Jak naprawić błędy SSL w WordPress?

Najczęstsze błędy SSL w WordPress wynikają z niepełnej konfiguracji HTTPS, pętli przekierowań albo problemu z certyfikatami zaufania na serwerze. Najpierw rozpoznaj objaw, a przed zmianami w bazie danych, pliku .htaccess lub wp-config.php wykonaj pełną kopię zapasową.

Jaki błąd SSL występuje na stronie?

Objaw zwykle wskazuje, w którym miejscu szukać przyczyny. Brak kłódki przy prawidłowo otwierającej się stronie najczęściej oznacza Mixed Content, natomiast niedostępność całej witryny może wynikać z pętli przekierowań. Problemy z aktualizacją WordPressa lub wtyczek często dotyczą konfiguracji serwera, a nie samej strony.

Objaw Prawdopodobna przyczyna Rozwiązanie
Kłódka nie pojawia się, a przeglądarka ostrzega o niezabezpieczonych elementach Mixed Content, czyli zasoby ładowane przez HTTP na stronie HTTPS Sprawdź adresy w ustawieniach WordPressa i zaktualizuj odnośniki w bazie danych
ERR_TOO_MANY_REDIRECTS Sprzeczne reguły w .htaccess, wp-config.php lub ustawieniach proxy Sprawdź adresy witryny i reguły przekierowań z HTTP na HTTPS
cURL error 60 przy aktualizacji lub instalacji wtyczki Brak aktualnego pliku certyfikatów CA na serwerze Zaktualizuj plik CA w WordPressie lub konfigurację PHP i systemu

Zabezpiecz stronę przed naprawą

Zmiana adresów w bazie danych albo edycja plików serwera może zablokować panel administracyjny lub całą witrynę. Przed rozpoczęciem upewnij się, że możesz przywrócić poprzednią konfigurację:

  • Wykonaj kopię bazy danych z poziomu panelu hostingu lub narzędzia administracyjnego.
  • Skopiuj pliki WordPressa, szczególnie .htaccess, wp-config.php i katalog wp-content.
  • Sprawdź dostęp FTP, SFTP albo menedżera plików, aby móc cofnąć zmianę poza panelem WordPressa.
  • Zapisz aktualne adresy witryny i reguły przekierowań przed ich modyfikacją.

Jak naprawić Mixed Content w WordPressie?

Mixed Content pojawia się wtedy, gdy strona otwiera się przez HTTPS, ale obrazy, arkusze stylów, skrypty lub osadzone materiały nadal są pobierane z adresów HTTP. Sama instalacja certyfikatu nie zmienia automatycznie wszystkich zapisanych odnośników.

Metoda ręczna – trwała zmiana adresów

To lepsze rozwiązanie, gdy masz dostęp do panelu i kopii zapasowej. Zmiany zapisują poprawne adresy w konfiguracji i bazie danych, więc strona nie musi naprawiać odnośników przy każdym ładowaniu.

  1. Zmień adresy WordPressa – przejdź do Ustawienia > Ogólne. W polach „Adres WordPressa (URL)” i „Adres witryny (URL)” zmień http:// na https://, a następnie zapisz zmiany.
  2. Wykonaj kopię bazy danych – jest potrzebna przed masową zamianą adresów.
  3. Zainstaluj Better Search Replace – wtyczkę znajdziesz w Wtyczki > Dodaj nową. Następnie przejdź do Narzędzia > Better Search Replace.
  4. Uruchom testową zamianę – w polu wyszukiwania wpisz pełny adres witryny z HTTP, a w polu zamiany ten sam adres z HTTPS. Najpierw użyj opcji „dry run”, aby sprawdzić liczbę zmian.
  5. Wykonaj zamianę – zaznacz właściwe tabele, sprawdź oba adresy znak po znaku i uruchom operację dopiero po upewnieniu się, że domena jest poprawna.

Jeśli korzystasz z Elementora lub innego page buildera, sprawdź także jego narzędzie do zamiany adresów. Niektóre obrazy tła, przyciski i ustawienia widżetów są przechowywane w danych tego narzędzia.

Really Simple SSL jako szybka alternatywa

Wtyczka Really Simple SSL może automatycznie wymusić HTTPS i tymczasowo obsłużyć część problemów z mieszaną zawartością. To rozwiązanie jest łatwiejsze dla początkujących, ale nie zastępuje zawsze poprawnej zmiany adresów w bazie. W zależności od konfiguracji wtyczka może wykonywać dodatkową pracę przy ładowaniu strony, dlatego po naprawie stałej warto ograniczyć jej użycie lub sprawdzić wpływ na wydajność.

Jak usunąć pętlę przekierowań i błąd cURL 60?

ERR_TOO_MANY_REDIRECTS

Pętla przekierowań powstaje, gdy serwer, WordPress lub zewnętrzne proxy wzajemnie wymuszają różne wersje adresu. Sprawdź, czy oba adresy w Ustawienia > Ogólne są identyczne i używają HTTPS. Jeśli nie możesz wejść do panelu, wartości można tymczasowo ustawić w pliku wp-config.php przed wierszem z komentarzem kończącym edycję:

define('WP_HOME', 'https://example.com');
define('WP_SITEURL', 'https://example.com');

Zastąp example.com własną domeną. Nie dodawaj końcowego ukośnika, jeśli pozostała konfiguracja witryny go nie używa. Sprawdź również, czy wtyczka SSL, panel hostingu i serwer proxy nie mają kilku niezależnych reguł wymuszających HTTPS.

Jeśli używasz Apache, plik .htaccess znajduje się zwykle w katalogu głównym WordPressa, obok katalogów wp-admin, wp-content i wp-includes. Po pobraniu kopii pliku przez FTP lub menedżer plików możesz umieścić na jego początku jedną regułę przekierowania:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>

Nie wklejaj tego fragmentu wielokrotnie. Jeśli hosting korzysta z reverse proxy, zmienna HTTPS może być przekazywana inaczej. W takim przypadku dalsze zmiany najlepiej skonsultować z administratorem serwera, ponieważ kolejna reguła może nasilić pętlę zamiast ją usunąć.

cURL error 60

Błąd cURL error 60 z komunikatem „unable to get local issuer certificate” pojawia się zwykle podczas połączeń WordPressa z zewnętrznymi serwerami. Oznacza problem z lokalnym zestawem certyfikatów CA, którego PHP i cURL używają do weryfikacji połączeń. Nie jest to zazwyczaj błąd certyfikatu witryny ani problem, który naprawi wtyczka WordPressa.

Postępuj w tej kolejności:

  1. Zaktualizuj plik CA WordPressa – przez FTP lub menedżer plików podmień wp-includes/certificates/ca-bundle.crt na plik pochodzący z aktualnej wersji WordPressa. Zachowaj kopię poprzedniego pliku.
  2. Sprawdź konfigurację PHP – administrator serwera może wskazać aktualny plik cacert.pem w php.ini za pomocą ustawień curl.cainfo i openssl.cafile.
  3. Zaktualizuj certyfikaty systemowe – na własnym serwerze trzeba odświeżyć pakiet ca-certificates oraz uruchomić ponownie PHP-FPM lub Apache.
  4. Sprawdź właściwą wersję PHP – przy kilku wersjach PHP każda może korzystać z innego pliku konfiguracyjnego. Na hostingu współdzielonym poproś administratora o wykonanie tej zmiany.

Nie wyłączaj weryfikacji SSL w WordPressie ani w cURL jako stałego rozwiązania. Usuwa to komunikat kosztem bezpieczeństwa połączeń.

Co sprawdzić po naprawie?

Po zmianach otwórz stronę w trybie prywatnym, wyczyść cache wtyczki i serwera, a następnie sprawdź kilka podstron oraz panel administracyjny. Końcowa weryfikacja powinna obejmować:

  • sprawdzenie kłódki i listy zasobów blokowanych przez przeglądarkę,
  • test adresu HTTP oraz HTTPS, aby upewnić się, że przekierowanie kończy się na jednej wersji,
  • ponowne uruchomienie aktualizacji wtyczki lub WordPressa, jeśli wcześniej występował cURL error 60,
  • dodanie wersji HTTPS domeny do Google Search Console, a także wariantu z „www”, jeśli był wcześniej używany osobno.

Jeżeli po tych czynnościach nadal występuje cURL error 60 i nie masz dostępu do php.ini, problem wymaga interwencji administratora hostingu. W przypadku pętli przekierowań warto przekazać mu kopię .htaccess oraz informację, czy strona korzysta z proxy lub usługi cache.

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?