$f = fsockopen("proxyhost", proxyport); if($f === false) die ("fuck"); fputs($f, "GET http://mail.ru/ HTTP/1.0\r\nHost: mail.ru\r\n\r\n"); echo "<pre>"; while(!feof($f)) echo fgets($f, 1024); fclose($f); echo "</pre>";
function socks_connect($host, $port, $dh, $dp) { $f = fsockopen($host, $port) or die("Can't connect to proxy"); $h = gethostbyname($dh); preg_match("#(\d+)\.(\d+)\.(\d+)\.(\d+)#", $h, $m); fwrite($f, "\x05\x01\x00"); $r = fread($f, 2); if(!( ord($r[0])==5 and ord($r[1])==0)) die("Invalid SOCKS reply"); fwrite($f, "\x05\x01\x00\x01" . chr($m[1]).chr($m[2]).chr($m[3]).chr($m[4]).chr($dp/256).chr($dp%256)); $r = fread($f, 10); if(!( ord($r[0])==5 and ord($r[1])==0)) die("Invalid SOCKS reply"); return $f; } $f = socks_connect("sockshost", socksport, "mail.ru", 80);