如何用curl和php欺骗引用者?

时间:2013-06-25 09:56:24

标签: php curl

我需要一个简单的完整的php + curl代码来欺骗引用者,我尝试了一些但是没有工作,最后一个我检查的是这个

function doMagic($url)
{
  $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: ";

  curl_setopt($curl, CURLOPT_URL, $url);
  curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.12011-10-16 20:23:00");
  curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
  curl_setopt($curl, CURLOPT_REFERER, "http://www.facebook.com");
  curl_setopt($curl, CURLOPT_ENCODING, "gzip,deflate");
  curl_setopt($curl, CURLOPT_AUTOREFERER, true);
  curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt($curl, CURLOPT_TIMEOUT, 30);
  curl_setopt($curl, CURLOPT_FOLLOWLOCATION,true);

  $html = curl_exec($curl);
  echo 'Curl error: '. curl_error($curl);
  curl_close($curl);

  return $html;
}

请填写,以便我可以通过邮寄方式输入目标网址

编辑 - 以上给我错误https://s9.postimg.cc/uhk87o2rz/image.png

1 个答案:

答案 0 :(得分:20)

使用 CURLOPT_REFERRER 选项,您已使用该选项。

curl_setopt($ch, CURLOPT_REFERER, "your referer website");

[修改] 我不认为该网站可以找到您的localhost网站的引用者。

在Google Chrome浏览器上试用

在“开发人员工具”中,转到“网络”视图(如果在加载页面时未打开,则需要重新加载才能填充页面)。 单击主页面请求 - 它应位于列表的顶部。 单击时,右窗格可能会显示HTML。 单击右侧的“标题”选项卡。 Referer显示在Request Headers列表中。