有沒有辦法將用戶重定向到另一個網站並同時僞造引用者? 試過這與我的代碼,我知道它錯了,但那只是我能得到多遠。在同一時間重定向和僞造引用者
<?php
$page1 = "http://google.com"; $page2 = "http://yahoo.com/";
$mypages = array($page1,$page2);
$myrandompage = $mypages[mt_rand(0, count($mypages) -1)];
$sites = array_map("trim", file("links.txt"));
$referer = $sites[array_rand($sites)];
function fake_it($url, $ref, $agent)
{
$curl = curl_init();
$header[0] = "Accept: text/xml,application/xml,application/xhtml+xml,";
$header[0] .= "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
$header[] = "Cache-Control: max-age=0";
$header[] = "Connection: keep-alive";
$header[] = "Keep-Alive: 300";
$header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
$header[] = "Accept-Language: en-us,en;q=0.5";
$header[] = "Pragma: "; // browsers keep this blank.
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_USERAGENT, $agent);
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_REFERER, $ref);
curl_setopt($curl, CURLOPT_ENCODING, 'gzip,deflate');
curl_setopt($curl, CURLOPT_AUTOREFERER, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_TIMEOUT, 5000);
$html = curl_exec($curl);
curl_close($curl);
// returns the content provided by the site
return $html;
}
//Below would send a request to the url, with the second parameter as the referrer
echo fake_it($myrandompage, $referer,$_SERVER['HTTP_USER_AGENT']);
?>
我想是從refer.php去 - > google.com(引薦=某些其他URL)..
這是沒有重定向。但是,除了從這一眼看起來確實很好。出了什麼問題,你怎麼知道? – GolezTrol 2011-06-04 02:30:42
我知道它不重定向那就是爲什麼我說錯了。我知道它的錯誤,因爲在地址欄中它說'http:// localhost/redirect/refer.php'而不是yahoo.com – 2011-06-04 02:35:13
嗯,我認爲這是不可能的。你不能告訴你的瀏覽器你實際上是雅虎,而你不是。你可以使用'header('Location:http://www.yahoo.com');'重定向到Yahoo,但這只是一個簡單的重定向,沒有你能夠影響引用者。如果你想要的是如此簡單的可能,這個世界將是一個尷尬的地方。 :) – GolezTrol 2011-06-04 02:45:27