php – 如何重定向保留原始引用者字段?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php – 如何重定向保留原始引用者字段?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1821字,纯文字阅读大概需要3分钟。
内容图文
![php – 如何重定向保留原始引用者字段?](/upload/InfoBanner/zyjiaocheng/701/c85cb2a7328747a39f025376b2fded6b.jpg)
我有以下PHP重定向脚本:
if ($country=="IL") { header('Location: http://iquality.itayb.net/index-he.html'); }
else { header('Location: http://iquality.itayb.net/index-en.html'); }
根据$country的值,这会将用户重定向到不同的页面.引荐者成为重定向页面本身.
如何保留原始引荐来源字段?
解决方法:
您不能使用标题(‘Referer:SOME_REFERER_URL’),因为浏览器无论如何都会覆盖它.
如果你拥有重定向的目标iquality.itayb.net,那么有几种方法可以做到这一点:
>在用户会话中保存引用者.
// in your first script save real referer to session
$_SESSION['REAL_REFERER'] = $_SERVER['HTTP_REFERER'];
// in the redirected script extract referer from session
$referer = '';
if (isset($_SESSION['REAL_REFERER'])) {
$referer = $_SESSION['REAL_REFERER'];
unset($_SESSION['REAL_REFERER']);
}
else {
$referer = $_SERVER['HTTP_REFERER'];
}
>发送referer作为参数:
// in your first script
header('Location: http://iquality.itayb.net/index-he.html?referer=' . $_SERVER['HTTP_REFERER']);
// in your refered script extract from the parameter
$referer = '';
if (isset($_REQUEST['referer'])) {
$referer = $_REQUEST['referer'];
}
else {
$referer = $_SERVER['HTTP_REFERER'];
}
如果你想欺骗任何其他服务器,那么使用这样的东西:
$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: {$_SERVER['HTTP_REFERER']} \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);
}
内容总结
以上是互联网集市为您收集整理的php – 如何重定向保留原始引用者字段?全部内容,希望文章能够帮你解决php – 如何重定向保留原始引用者字段?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。