WordPress 2.8: An Unexpected HTTP Error occurred during the API request
Manche Blogger bekommen seit dem Update auf WordPress 2.8 sporadisch die Fehlermeldung mit dem aussagekräftigen Titel Ein unerwarteter HTTP-Fehler ist während der API-Abfrage aufgetreten (in englischen Versionen oder bei Lokalisationsfehlern: An Unexpected HTTP Error occurred during the API request). Häufig passiert dies, wenn man Seiten im Admin-Panel aufrufen oder sich einloggen will. Manchmal gibt es auch einen WP HTTP Error ohne weitere Beschreibung oder es wird einfach eine weiÃe Seite angezeigt.
Der Grund dieses Fehlers liegt darin, dass WordPress ein Timeout von 5 Sekunden hat, bis es die geladene Seite als nicht reagierend erachtet. Wenn nun ein Plugin oder eine Seite die WordPress-API länger als fünf Sekunden beschäftigt (was durchaus öfters vorkommen kann, gerade bei umfangreicheren Installationen), kommt der "unbekannte HTTP-Fehler". Zur Lösung dieses Problems muss man nur eine kleine Ãnderung bewerkstelligen - und zwar in der Zeile 228 (ab der Version 2.8.6 ist es die Zeile 223, bei anderen Versionen einfach mal suchen) der wp-includes/http.php:
'timeout' => apply_filters( 'http_request_timeout', 5),
Einfach das Timeout von standardmäÃig 5 Sekunden auf einen höheren Wert erhöhen. Bei schnellen Servern kann man ungefähr 10 Sekunden einstellen, bei langsameren können es durchaus einmal 25 Sekunden oder mehr sein. Man sollte allerdings etwas herumprobieren, bis man den optimalen Wert gefunden hat - liegt er nämlich zu hoch, könnten die "richtigen" Timeouts oder schadhafte Scripts nicht rechtzeitig unterbrochen werden und den Server ausbremsen.
November 23rd, 2009
Danke für den Tipp! Dachte schon es wäre was ernstes, als ich die Meldung bekam…
GruÃ
Jack
Juni 4th, 2010
Ehrlich gesagt, finde ich den “wp.includes” nicht. Habe zwar den Ordner, aber denn kan ich ja schlecht bearbeiten..
.
Wüsste da jemand einen Rat?
Juni 4th, 2010
Die Datei, die du bearbeiten musst, heiÃt http.php und liegt im Unterordner wp-includes, wie oben beschrieben. wp.includes gibts natürlich nicht
Dezember 20th, 2011
Hey
öhm… bisschen später Kommentar. (bin gespannt ob er gelesen wird)
Ich wollte mal fragen, wo genau man das einfügen soll, denn wenn ich die Datei http.php bearbeite mit “PSPad” dann komme ich nicht mal zu der Zeile 228 bzw. bei 223 wird es auch nicht angezeigt.
Ich benutze die neuste WP Version.
Bitte um Hilfe.
GrüÃe:
Tobi
Dezember 28th, 2011
Seit Version 3.0 ist die genannte Codezeile in der wp-includes/class-http.php zu finden.