Der Martin: wie schaltet man bei fsockopen einen proxy dazwischen ? Danke.

Beitrag lesen

Hallo,

es soll ja mit  :
$fp = fsockopen($proxy,8080);
fputs($fp, 'GET http://www.google.de HTTP/1.0\r\nHost:www.google.de:80\r\n\r\n');
gehen, aber nicht bei mir, sieht jemand den Fehler oder hat eine Lösung ?

ja, du sprichst kein korrektes HTTP. Beachte außerdem, dass PHP in Strings, die in einfachen Anführungszeichen notiert werden, keine Steuerzeichen oder Variablenersetzungen auswertet.

Nach dem Methodennamen GET folgt nur der Host-relative Teil der URL (hier also nur "/") und die HTTP-Version. Der Hostname wird ja in einem separaten Header mitgeteilt. Das Präfix "http:" ist hier völlig fehl am Platz - es ist anhand des Kontextes schon hinreichend klar, dass es um HTTP-Kommunikation geht. Im Duden steht auch nicht vor jedem Schlagwort nochmal "Deutsch:" davor.

Ergo:

$fp = fsockopen($proxy,8080);
fputs($fp, "GET / HTTP/1.0\r\nHost: www.google.de\r\n\r\n");

So long,
 Martin

PS: Du plenkst!

--
Niemand ist überflüssig: Er kann immer noch als schlechtes Beispiel dienen.