【问题标题】:Avoiding Chain Redirects on AMP Page URLs避免 AMP 页面 URL 上的链式重定向
【发布时间】:2021-04-27 11:36:10
【问题描述】:

我正在寻求有关链重定向问题的帮助。

期望的行为:example.com/foo?amp 重定向到 example.com/bar

当前行为:example.com/foo?amp 重定向到 example.com/foo,然后重定向到 example.com/bar

这是一个 Wordpress 网站。 Htaccess 有以下规则,似乎没有解决链式重定向:

RewriteCond %{QUERY_STRING} amp
RewriteRule ^/foo$ /bar [L,R=301]

我的 htaccess kung foo 很弱,所以我完全期待我在那里弄得一团糟!

任何帮助表示赞赏:)

【问题讨论】:

    标签: wordpress .htaccess redirect


    【解决方案1】:

    你错过了一个很小的细节来让事情顺利进行:

    RewriteEngine on
    RewriteCond %{QUERY_STRING} amp
    RewriteRule ^foo$ /bar [L,R=301]
    

    当在分布式配置文件(“.htaccess”)中实现时,重写规则中的模式与 URL 的相对路径(foo,而不是/foo)匹配。

    阅读您正在使用的工具的文档以了解此类详细信息确实很有意义。作为典型的开源软件,apache http 服务器及其模块的文档质量非常好,并附带了很好的示例。 你想从这里开始: http://httpd.apache.org/docs/current/howto/htaccess.html https://httpd.apache.org/docs/current/mod/mod_rewrite.html

    上面的规则可以稍微优化一下:

    RewriteEngine on
    RewriteCond %{QUERY_STRING} ^amp$
    RewriteRule ^/?foo/?$ /bar [R=301,END]
    

    并且你应该检查你是否可以在实际的http服务器的主机配置中实现这样的规则,而不是使用分布式配置文件......

    【讨论】:

    • 太棒了!非常感谢您及时详细的回复。度过美好的一天。
    猜你喜欢
    • 1970-01-01
    • 2019-03-23
    • 2019-11-06
    • 1970-01-01
    • 2021-11-18
    • 2014-12-02
    • 2012-05-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多