2011-08-26 46 views
3

我想用一条消息将访问者重定向到新页面,但我不希望Google认为我的内容被永久/暂时移动。我如何重定向用户,而不是Google(和其他抓取工具)?

我该如何避免这种情况?

这是我使用重定向的PHP:

<?php 
@session_start(); 

$_SESSION['uri'] = $_SERVER['VBSEO_URI']; 

function getRealIP() { 

    if (!empty($_SERVER['HTTP_CLIENT_IP'])) 
     return $_SERVER['HTTP_CLIENT_IP']; 

    if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) 
     return $_SERVER['HTTP_X_FORWARDED_FOR']; 

     return $_SERVER['REMOTE_ADDR']; 
    } 

if(getRealIP()!=$_COOKIE['cookie']) { 

    setcookie("cookie", getRealIP(), time() + 31536000, "/"); 
    header('Location: http://www.sie.com/redirect/');  

    } 

?> 

回答

3

我会使用的解决方案;

- 编辑的.htaccess中加入这一行

RewriteRule robots\.txt robots.php 

创建robots.php文件,并在此代码

session_start(); 
$_SESSION['robot'] = 1; 
echo file_get_contents('robots.txt'); 
exit; 
在你的代码粘贴

...测试这个变量

   if (!(isset($_SESSION['robot']))) 
        { 
    //this is probably human 
        } else 
        { 
    //this is probably a crawler; 
} 

创建一个会话变量以测试您是否已经浏览并仅显示消息一次

+0

这是一个好主意,但我不知道机器人是否保持呼叫之间的状态(用于存储会话cookie) – xPheRe

相关问题