lib-ajax-example-relay-relay.php / php
<?php # List the allowed domain names below, between quote # characters, with all but the last followed by a comma. # # This is to restrict opportunities for cross site # scripting. Pages can only be retrieved from the # domains listed here. # # In order to retrieve pages from both example.com and # www.example.com, both domains must be listed. _SERVER['QUERY_STRING']) and preg_match('/^http:\/\//i', { url = _GET['url']) and preg_match('/^http:\/\//i', { url = _POST['url']) and preg_match('/^http:\/\//i', { url = checkdomain = preg_replace('/^http:\/\//i','', checkdomain = preg_replace('/\/.*checkdomain); checkdomain); AllowedDomains as checkdomain == strtolower(domainokay = true; break; } } if(! url); exit; # When URL-aware fopen wrappers are not enabled, the # following can be used. # Retrieve the page and echo it to the browser. # Break URL into host and URI parts. if(strpos(host = uri = url = preg_replace('/^.+?:\/\//','', pos = strpos(host = substr(pos); url,content fp = @fsockopen("errno,fp) { echo("Error: errno)"); exit; } else { fwrite(uri HTTP/1.0\r\n"); fwrite(host\r\n"); if( isset(fp,'User-Agent: '.fp,"Connection: Close\r\n"); fwrite(fp) ) { fp,1024); } fclose(content,"\r") > 0 ) { echo( preg_replace('/^.+?[\r\n]{4,}/s','',content) ); } ?>
(C) Æliens 20/2/2008
You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author.