【问题标题】:Another .htaccess redirect case另一个 .htaccess 重定向案例
【发布时间】:2015-07-01 15:49:33
【问题描述】:

我有一个网站,其中 mydomain.com 和 mydomain.com/frontpage 提供完全相同的内容。 所谓的 SEO 专家告诉我,在不同的地址上拥有相同的内容是非常糟糕的。 Google 会给我带来可怕的命运。

所以我想很好,我只是将 mydomain.com 重定向到 mydomain.com/frontpage,但我失败得很惨。我就是无法理解 htaccess 命令。

我需要将访问 mydomain.com 或 www.mydomain.com 的访问者重定向到 www.mydomain.com/frontpage 以使其在浏览器地址字段中可见。 但没有其他东西必须重定向。 例如,www.mydomain.com/anotherpage 必须仍然存在。

我的 .htaccess 已经充满了许多重写规则,这些规则将所有这些用户友好的地址重定向到真实的 url (index.php?pageid=341) 等。所以我想我会首先重定向 mydomain。 com 到 mydomain.com/frontpage,然后让另一个 RewriteRule 稍后确保 mydomain.com/frontpage 实际上指向 index.php?pageid=341。 但是 mydomain.com => mydomain.com/frontpage 必须是可见的重定向,而所有其他重写规则对用户都是隐藏的。

RedirectRedirectMatchRewriteRule 看起来如何,将访问者从 www.mydomain.com 重定向到 www.mydomain.com/frontpage,同时保留其他地址,例如www.mydomain.com/anotherpage ?

谢谢。

【问题讨论】:

    标签: .htaccess redirect


    【解决方案1】:

    您可以在RewriteEngine On 行下方插入这条新规则:

    RewriteRule ^/?$ /frontpage [L,R=301]
    

    【讨论】:

    • 谢谢。它几乎可以工作。但出于某种原因,它也保留了 URL 的其余部分。地址变为 mydomain.com/frontpage/?pageid=431。我自己设法产生了这个结果。 :-/
    • 您需要将此规则保留为RewriteEngine on 行之后的第一条规则。
    • 哦,对不起,我看错了。我把它放在RewriteEngine On 线的上方。是的,它现在有效!非常感谢!
    猜你喜欢
    • 1970-01-01
    • 2020-11-21
    • 2014-02-07
    • 2016-12-19
    • 1970-01-01
    • 1970-01-01
    • 2017-05-21
    • 2020-05-04
    • 1970-01-01
    相关资源
    最近更新 更多