Php 基于referer的重定向';s网址

Php 基于referer的重定向';s网址,php,redirect,http-referer,Php,Redirect,Http Referer,我试图根据访问者的参考url将他们重定向到一个站点 以下是脚本: php $domain='blankds.com'; $referrer=$_SERVER['HTTP_REFERER']; echo $referrer; if (preg_match("/$domain/",$referrer)) { header('Location: http://www.blackisgreen.org/page_1.php'); } else { header('Location: http://

我试图根据访问者的参考url将他们重定向到一个站点

以下是脚本:

php $domain='blankds.com'; $referrer=$_SERVER['HTTP_REFERER']; echo $referrer; if (preg_match("/$domain/",$referrer)) { header('Location: http://www.blackisgreen.org/page_1.php'); } else { header('Location: http://www.blackisgreen.org/page_2.php'); }; php $domain='blankds.com'; $REFERER=$\u服务器['HTTP\u REFERER']; echo$推荐人; if(预匹配(“/$domain/”,$referer)){ 标题('位置:http://www.blackisgreen.org/page_1.php'); }否则{ 标题('位置:http://www.blackisgreen.org/page_2.php'); }; 错误:我收到一个“警告:无法修改标题”错误,因为我在发送标题之前回显$referer

如果删除回显,脚本将无法工作


有什么建议吗?

当您
echo$referer
时,PHP正在向请求页面的用户发送标题。然后调用的header函数尝试修改这些标题并附加位置重定向,但无法执行,因为标题已随页面内容的开头一起发送


要解决这个问题,请查看PHP的函数,尤其是
ob_start()应允许您继续回显重定向位置,并允许您同时重定向。

请注意:任何输出都将自动生成标题。如果你想用标题重定向,你只需要注释掉
echo$referer
如果你需要查看什么样的推荐人要去哪个站点进行调试,只需将其放在URL中,接收页面应该忽略它

它在什么方面没有达到预期效果?