fopen() Probleme

Revoluzifer

New Member
Hi Leute,
ich habe ein für manchen hier evtl triviales Problem.
fopen() liefert mir des öfteren "failed to open stream: HTTP request failed!".
Das Eigenartige für mich daran ist erstens, das der Fehler nur manchmal auftritt und zweitens, das ich versuche eine html-Seite einzulesen, die per Browser erreichbar ist.
Die einzige "Lösung" die ich zu ähnlichen Problemen gefunden habe war, im PHP-Skript
Code:
ini_set('user_agent', $_SERVER['HTTP_USER_AGENT']);
zu setzen.
Dies widerum führt aber zu "PHP Notice: Undefined index: HTTP_USER_AGENT".

Und hier beginnt meine vollständige Ratlosigkeit.
Hat irgendjemand vielleicht weitere Ideen?
Vielen Dank schon im Voraus!
 
$_SERVER['HTTP_USER_AGENT'] ist nur definiert wenn du das Skript ueber Webserver aufrufst und kann eventuell je nach Webserver variieren.

Am einfachsten konfigurierst du den Wert fest oder erlaubst Fallback auf einen statischen Wert. Eine Liste an User Agent strings findest du hier: Link

Beispiel waere:
PHP:
define('DEFAULT_USER_AGENT','<FREIE AUSWAHL>');
ini_set('user_agent',(isset($_SERVER['HTTP_USER_AGENT']?$_SERVER['HTTP_USER_AGENT']:DEFAULT_USER_AGENT));
 
Ok, jetzt mal Butter bei die Fische :D
Also, das Problem besteht weiterhin.
Nach weiterer Analyse scheint es aber nicht am User Agent zu liegen.

Das PHP-Skript macht einige Anfragen an immer den gleichen Server, aber verschiedene Seiten darauf.
Das Problem tritt aber bei weitem nicht bei jedem Aufrauf auf sondern nur in relativ geringer Zahl.
Code:
failed to open stream: HTTP request failed! HTTP/1.0 408 Request Time-out
Soweit die komplette Meldung.
Frage nun meinerseits:
Welche Gründe kann dies haben? Mich verwirrt dabei eben der Aspekt, dass das Ganze nur zufällig hier und da auftritt.
Und besonders: was kann ich da machen?
 
Ist die abzufragende Datei auf dem gleichen Server?
Hat der entfernte Server ansonsten eventuell eine Begrenzung je Client-IP?
(zB mod_evasive)
 
Es handelt sich um genau zu sein um den kicker.de Server, ich betreue widerum einen Server, auf dem ein Skript liegt, welches die Bundesliga-Geschehen analysiert und auswertet.
Insofern weiß ich leider nichts Genaues über Einschränkungen seitens des entfernten Servers.
 
Also gehen wir davon aus dass er limitiert.
Entsprechend musst du Datenbank-basierend cachen ;)
 
Back
Top