<?php
$host = 'www.yourtargeturl.com';
$service_uri = '/detect_referal.php';
$vars ='additional_option1=yes&additional_option2=un';
$header = "Host: $host\r\n";
$header .= "User-Agent: PHP Script\r\n";
$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
$header .= "Referer: http://www.google.com/search?hl=en&q=jigh&btnG=Google+Search \r\n";
$header .= "Content-Length: ".strlen($vars)."\r\n";
$header .= "Connection: close\r\n\r\n";
$fp = fsockopen("".$host,80, $errno, $errstr);
if (!$fp) {
echo "$errstr ($errno)<br/>\n";
echo $fp;
} else {
fputs($fp, "POST $service_uri HTTP/1.1\r\n");
fputs($fp, $header.$vars);
fwrite($fp, $out);
while (!feof($fp)) {
echo fgets($fp, 128);
}
fclose($fp);
}
?>
这正在改变$_SERVER['HTTP_REFERER']
。如何更改$_SERVER['REMOTE_ADDR']
。我应该在$header
附加什么代码?
答案 0 :(得分:1)
你做不到。 IP地址在TCP连接开始时确定,而不是在HTTP标头中确定。 (有可能欺骗[虽然不是那样远]但是你不会得到回复。)
答案 1 :(得分:0)
你做不到。您连接的IP地址不是某个标题...它来自您从服务器到另一个服务器的底层TCP连接。