Leider schlägt das automatische Updaten des WordPress-Systems oder von einigen WordPress-Plugins bei diversen Hosting-Anbietern immer mal wieder aufgrund eines „cURL error 28“ Fehler fehl. Es scheint, als hängt sich der Update-Prozess regelrecht auf. Die Updates können dann nur noch manuell durchgeführt werden. Hier gibt es von mir einige Lösungsvorschläge dazu.
cURL (Curl URL Request Library) ist eine PHP-Programmbibliothek und Kommandozeilen-Tool zum Übertragen von Dateien. Damit lassen sich unter anderem Daten vom Server abrufen oder lokal speichern, Downloads fortsetzen oder auch Daten an einen fremden Server senden.
cURL error 28 – Fehlermeldungen bei Updates oder WordPress Health Check
Manchmal treten in Zusammenhang mit cURL jedoch Fehler beim Updaten von WordPress oder beim WordPress Health Check auf. In einigen Fällen auch im laufenden Betrieb während der automatischen Datensicherung mittels Backup-Plugin. Das Backup konnte man manuell anstoßen und dann lief es auch korrekt durch. Problem war die zeitgesteuerte automatische Sicherung: Sie startete zwar, hing sich dann aber jedes Mal auf und brach mit einem Fehler ab.
Ursache: Es kommt hier einfach zu einer Zeitüberschreitung, weil der Server nicht in der Lage ist, die Verbindungen korrekt herzustellen oder den Vorgang erfolgreich abzuschließen, bevor die Zeitüberschreitung erreicht ist. Die Fehlermeldung lautet z. B. „cURL error 28: Connection timed out after 10000 milliseconds“. Die Millisekunden können in der Fehlermeldung abweichen, aber in Grunde die Fehlermeldung immer die Gleiche:
- cURL error 28: Connection timed out after XXXXX milliseconds
- cURL error 28: Operation timed out after XXXXX milliseconds with 0 out of 0 bytes received
- The REST API encountered an error The REST API request failed due to an error. Error: cURL error 28: Operation timed out after 10000 milliseconds with 0 bytes received (http_request_failed)
- Your site could not complete a loopback request The loopback request to your site failed, this means features relying on them are not currently working as expected. Error: cURL error 28: Operation timed out after 10000 milliseconds with 0 bytes received (http_request_failed)
cURL error 28 Fehler – Lösungsvorschläge
Leider gibt es für den „cURL error 28“ keine einheitliche Lösung. Am besten arbeitet man die folgenden Lösungsvorschläge für die Fehlerbehebung der Reihe nach durch.
1. PHP-Version checken:
Man sollte sicherstellen, dass man auf dem Server mindestens eine PHP Version 7.4. oder höher verwendet. Denn die Ursache kann schlichtweg eine veraltete cURL-Bibliothek sein.
2. Aktuelle WordPress-Version:
Man sollte sein WordPress auf die neueste Version aktualisieren, falls dies noch nicht geschehen ist. Hierzu muss evtl. ein manuelles WordPress Update per FTP durchgeführt werden, wenn das automatische Update nicht läuft.
3. PHP Memory Limit in WordPress erhöhen:
Ich hab in einem anderen Artikel schon einmal beschrieben, wie man das Memory Limit hochsetzen kann. Dazu nutzt man in der Regel den Befehl define(‚WP_MEMORY_LIMIT‘, ‚512M‘);
4. Evtl. Sicherheits-Plugin in WordPress deaktivieren:
Verwendest Du ein Sicherheits-Plugin in WordPress? Dann solltest Du es testweise deaktivieren, denn das Sicherheits-Plugin kann die Verbindungen blockieren.
5. Plugin WordPress Native PHP Sessions ausprobieren:
Oft kann man den Fehler durch die manuelle Installation des externen Plugins WordPress Native PHP Sessions lösen. Mit dem Plugin „WordPress Native PHP Sessions“ lassen sich die nativen Session-Handler von PHP aktivieren (PHP $_SESSIONs). WordPress selber verwendet nämlich keine PHP-Sitzungen. Weil zahlreiche Plugins oder Themes diese Sessions aber benutzen, kommt es bei einigen Hosting-Anbietern hier zum Problem. Die Ursache liegt wohl einfach an Serverbeschränkungen vonseiten des Hosters.
So installierst Du das Plugin WordPress Native PHP Sessions
Zuerst muss man die .zip-Datei des Plugins von https://de.wordpress.org/plugins/wp-native-php-sessions/ auf seinen PC herunterladen. Dann in WordPress unter „Plugins“ – „Installieren“ – „Plugin hochladen“ – „Datei auswählen“ das Plugin installieren und aktivieren. Alternativ kann man die .zip-Datei auch entpacken und manuell mit einem FTP-Programm in das WordPress-Verzeichnis /wp-content/plugins/ hochladen. Auch dann muss man das Plugin unter „Plugins“ – „Installierte Plugins“ noch aktivieren.
Besteht das Problem mit dem cURL error 28 immer noch?
Hat man mit dem Plugin „WordPress Native PHP Sessions“ keinen Erfolg, sollte man sich direkt an den Hoster wenden. Denn dann liegt die Ursache fast immer bei einer Einschränkung am Server, einer Server-Firewall oder evtl. Sicherheits-Modulen (mod_security), die ausgehende Verbindungen blockieren.