Discussion on:

Message 12 of 12
0 Votes
+ -
Re: proxy server in PHP
Use the following function instead of fopen() to read via a proxy server:

function read_url( $url, $proxy = null, $port = null)
{
$content = '';

if ( empty($proxy) )
{
// Open URL directly
$fp = fopen ($url, 'r');
if (!$fp)
{
return false;
}
while(!feof($fp))
{
$content = $content . fread($fp,4096);
}
fclose($fp);

} else {
// Open proxy
$fp = fsockopen($proxy, $port);
if (!$fp)
{
return false;
}
// Invoke URL via proxy
fputs($fp, "GET $url HTTP/1.0\r\nHost: $proxy\r\n\r\n");
while(!feof($fp))
{
$content = $content . fread($fp,4096);
}
fclose($fp);
// Strip headers
$content = substr($content, strpos($content,"\r\n\r\n")+4);
}
return $content;
}
Posted by Mike_MG
8th Mar 2004