building a 'simple' php url proxy -


i need implement simple php proxy in web application building (its flash based , destination service provider doesn't allow edits crossdomain.xml file)

can php gurus offer advice on following 2 options? also, think, not sure, need include header info well.

thanks feedback!

option1

$url = $_get['path']; readfile($path); 

option2

 $content .= file_get_contents($_get['path']);   if ($content !== false)   {          echo($content);  }   else   {         // there error  } 

first of all, never ever ever include file based on user input. imagine happen if call script this:

http://example.com/proxy.php?path=/etc/passwd

then onto issue: kind of data proxying? if kind @ all, need detect content type content, , pass on receiving end knows it's getting. suggest using http_request2 or similar pear (see: http://pear.php.net/package/http_request2) if @ possible. if have access it, this:

// first validate request actual web address if(!preg_match("#^https?://#", $_get['path']) {         header("http/1.1 404 not found");         echo "content not found, bad url!";         exit(); }  // make request $req = new http_request2($_get['path']); $response = $req->send(); // output content-type header , use content-type of original file header("content-type: " . $response->getheader("content-type")); // , provide file body echo $response->getbody(); 

note code hasn't been tested, give starting point.


Comments

Popular posts from this blog

c++ - Convert big endian to little endian when reading from a binary file -

C#: Application without a window or taskbar item (background app) that can still use Console.WriteLine() -

unicode - Are email addresses allowed to contain non-alphanumeric characters? -