3

我想对大量旧 URL 进行 301 处理。

我可以通过 PHP 在 404 脚本中执行此操作,还是会弄乱搜索引擎结果(他们认为找不到页面)?

我当前的.htaccess:

ErrorDocument 404 /404/

我的 404/index.php 脚本计划:

<?
switch (rtrim($_SERVER["REQUEST_URI"],"/")) {
    case "/blah/foo" :
        $redirect="/somewhere_else/";
        break;
    case "/over_here" :
        $redirect="/over_there/";
        break;
    case "/etc/etc/etc" :
        $redirect="/etc/and_so_on/";
        break;
}

if($redirect) {
    header ("HTTP/1.1 301 Moved Permanently");
    header ("Location: ".$redirect);
    exit();
}
?>
<html>
    <head>
        <title>404: Page not found.</title>
    </head>
    <body>
        <h1>404: Page not found.</h1>
    </body>
</html>

所以,基本上,重定向不是问题,但我不希望搜索引擎认为这些页面“未找到”或将“少想”它们,或类似的东西......

这是合法的吗?谷歌会对此感到满意吗?

4

1 回答 1

0

发送LocationHTTP 标头会自动设置相应的状态。它已记录在案,并且很容易使用 Firebug 或浏览器的等效工具进行测试。

于 2013-04-01T09:36:31.627 回答