| | | | |
| | |
| Neuer Benutzer Registriert seit: 21.07.2005
Beiträge: 7
![]() | Hallo an alle, denkt bitte nicht: "Schon wieder eine fsockopen-, http_Request-Frage." Ich habe ein Problem, das in keinem der Posts, die ich zu diesem Thema hier gefunden habe, thematisiert, bzw. angesprochen wurde: Mein Ziel: Ich möchte ein Script schreiben, dass Domains aus einer Datenbank liest und den Stutus (zB. 200, 302, 404 etc.) zurückgibt. Ich bin, dank diesem Forum, auf fsockopen(), http_request von pear und curl gestoßen. curl scheidet leider aus, da es nicht zur Verfügung steht. Ich habe mich für fsockopen und/oder http_request entschieden. fsockopen gibt zwar keinen Fehlercode (200, 404 etc.) zurück, aber immerhin kann ich damit herausfinden, ob eine domain erreichbar ist. Nun endlich zum eigentlichen Problem: Die Scripte, die ich mit fsockopen und http_request geschrieben habe funtionieren soweit ganz gut, nur bei Domains folgenden Typs nicht: - http://www.ein-beispiel.de // Domain mit "-" - http://www.beispiel.de.tp // "erweiterte" Topleveldomain - bei Domains mit Umlauten Okay bei Domains mit Umlauten kann ich es vielleicht akzeptieren, dass es hier keine Lösung/Möglichkeit gibt, da ein sehr spezielles Problem von Deutschland und kein globales. In den ersten beiden Fällen bin ich der Meinung, dass es funktioneren sollte. Ich habe testweise verschiedene der Problemdomains getestet und das Ergebniss war immer das selbe. Natürlich habe ich die Domains auch manuell (sprich im Browser) überprüft, hätte ja sein können, dass sie wirklich nicht erreichbar sind, jedoch war das nicht der Fall. Jetzt habe ich mir überlegt, dass vielleicht Proxyserver oder Firewalls Einfluß nehmen könnten. Habe die Scripte zu Hause mal getestet, dort war das Ergebniss jedoch das selbe. Hier ist mal der Code der Funktionen, die ich geschrieben habe. Mit fsockopen(): PHP-Code: Mit pear - http_Request: PHP-Code: Eine weitere Methode den Statuscode zu bekommen ist auch: Mit pear - HTTP_Client::Head() PHP-Code: Code: Code: Object id #7 Danke für eure Antworten. |
| |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Neuer Benutzer Registriert seit: 21.07.2005
Beiträge: 7
![]() | Hier meine Testseiten: - http://www.karate-seeheim.de - http://www.boese-online.de - http://www.bbc.co.uk - http://www.börse-online.de/ Das Ergebnis bei allen Testdomains ist: Code: fsockopen() [function.fsockopen]: unable to connect to www.boerse-online.de:80 (A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.) Gerade ist mir auch aufgefallen, dass das Script bei "normalen" Websites, wie zB. http://www.google.de nicht funktioniert. Kann es sein, dass der Socketzugriff von den entsprechenden Domains aus Sicherheitsgründen geblockt wird? |
| |
| | |||
| Erfahrener Benutzer Registriert seit: 17.07.2006
Beiträge: 140
![]() | Hi, Zitat:
Um das ausschliessen zu können kannst du dir ja mal per nslookup die IP's zu dein Domains holen und dann mit der IP testen. Zitat:
mfg Louis | ||
| |
| | ||
| Neuer Benutzer Registriert seit: 21.07.2005
Beiträge: 7
![]() | Zitat:
Ich habe deine Idee mal ausprobiert, sowohl mit nslookup, als auch mit diesem kleinen Script: PHP-Code: Code: www.boerse-online.de -> 194.12.210.209 Code: Object id #6 Eine andere Idee, zu der ich gerne mal eure Meinung hören würde, ist: Wenn ein fsockopen() auf Port 80 einem ganz normalen HTTP-Zugriff entspricht - was ja auch sehr einleuchtend ist - dann könnte es doch sein, dass bei meinem Problem ein Proxyserver seine Finger mit im Spiel hat. Immerhin fungiert ein HTTP-Proxy als Zwischenspeicher und unternaderem noch als Trennung zwischen lokalem Netz und Internet. Was außerdem für diese These spricht, ist, dass auch www.google.de entsprechend das oben stehende Ergebnis ausgibt, die firmeninternen Webserver jedoch positiv auf den Request antworten. Was denkt ihr? | |
| |
| | ||
| Erfahrener Benutzer Registriert seit: 13.11.2005
Beiträge: 2.583
![]() | Zitat:
| |
| |
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Frage zu fsockopen() | Pennywise | PHP Tipps 2008 | 2 | 27.07.2008 14:50 |
| fsockopen - timeserver | chinchiller | PHP Tipps 2008 | 8 | 07.06.2008 11:15 |
| fsockopen | PHP Tipps 2006 | 12 | 13.11.2006 21:12 | |
| fsockopen: broadcast nicht erlaubt (WOL) | HStev | PHP-Fortgeschrittene | 0 | 07.02.2006 20:18 |
| fsockopen() Problem - weis nicht mehr weiter :( | web2 | PHP Tipps 2005-2 | 22 | 21.10.2005 15:31 |
| fsockopen problem | PHP Tipps 2005 | 4 | 09.05.2005 01:03 | |
| php fsockopen fgets response check: 404 und 403 warum? | ff-webdesigner.de | PHP Tipps 2005 | 4 | 17.04.2005 14:06 |
| [Erledigt] fsockopen über socks proxy | PHP-Fortgeschrittene | 1 | 17.03.2005 09:38 | |
| fsockopen - Fehlermeldung ausschalten | PHP-Fortgeschrittene | 2 | 09.11.2004 20:12 | |
| fsockopen, verbindung ins netzwerk? | PHP-Fortgeschrittene | 5 | 30.10.2004 12:42 | |
| Probleme mit fsockopen() | PHP Tipps 2004 | 5 | 22.10.2004 13:55 | |
| fsockopen funktioniert nicht | PHP Tipps 2004 | 13 | 19.10.2004 12:25 | |
| fsockopen: while(!feof($fp)) dauert bei manchen Servern 15 s | tapferesschneiderlein | PHP-Fortgeschrittene | 7 | 13.09.2004 18:47 |
| Was bedeutet mit fsockopen: Resource id #2 | PHP Tipps 2004 | 3 | 13.09.2004 17:26 | |
| fsockopen | PHP Tipps 2004 | 2 | 22.06.2004 14:46 | |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| xampp fsockopen, fsockopen xampp, fsock-domain, fsockopen 302, fsockopen() xampp, fsock domain, xampp fsock, xampp fsockopen aktivieren, fsockopen umlaute, socketzugriffe, xampp fsockopen(), socks proxys domains checken, fsockopen, xampp fsockopen port 80, php fscockopen mit bestimmter ip, http://www.php.de/php-tipps-2006/41869-fsockopen-problemdomains.html, socketzugriff, fsocket bei xampp, wie kann ich testen ob fsocket bei meinen hoster offen ist, fsockopen und pfsockopen das gleichr? |

Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.