我有一种情况,A.com总是链接到我的产品,然后让他们的访问者检查出来,然后讨论它。
我不想要这个,我对他们毫无意义的访问感兴趣,这些访问只会占用我的带宽。
我想手动将代码放入我的产品页面标题或.htaccess文件中,该文件会将A.com重定向到A.com或google.com
它们都来自的典型链接采用以下格式:
forum.A.com/showthread.php?t=1111111
我知道你可以用这段代码完成:
RewriteEngine on
# Options +FollowSymlinks
RewriteCond %{HTTP_REFERER} badsite\.com [NC]
RewriteRule .* - [F]
但我不希望显示“禁止”消息。我只想在远离我的网站的路上向他们展示。
解:
<?php
$HTTP_REFERRER=$_SERVER['HTTP_REFERER'];
if ($HTTP_REFERRER) {
// check if the referrer is on your noentry list
// if so redirect it to another page
if ($HTTP_REFERRER == "http://website.com") {
header("Location: http://gotothiswebsiteinstead.com");
die();
}
} else {
//everything is OK
}
?>
答案 0 :(得分:0)
这样的事情应该完全符合你的要求:
$refererHost = parse_url($_SERVER['HTTP_REFERER'], PARSE_URL_HOST);
if (preg_match('/^(www\.)?badhost\.com$/i', $refererHost)) {
header('Location: ' . $_SERVER['HTTP_REFERER']);
die();
}
然而,请注意,任何人都可以伪造他们的推荐人。