【问题标题】:htaccess How to redirect old dynamic url to the new onehtaccess 如何将旧的动态 url 重定向到新的
【发布时间】:2017-08-13 14:36:33
【问题描述】:

我的网站使用由 htaccess 中的代码动态设置的链接(如下):

RewriteRule ^(.*),(.*),([a-z0-9-_.]+),([a-z0-9-_.]+),([a-z0-9-_.]+)$ $4.php?n=$1&z=$2&t=$3&v=$5 [L,NC,NS,NE]

实际上链接看起来像这样(示例):

www.mypage.com/$1,$2,$3,$4,$5

我想将 htaccess 中的动态链接从旧链接重定向到新链接,该链接将具有这样的结构(不带 $5 参数):

www.mypage.com/$4/$1-$2/$3

重定向尤其适用于将搜索引擎中可用的旧链接重定向到新链接。

感谢您的帮助。

【问题讨论】:

    标签: .htaccess redirect mod-rewrite dynamic hyperlink


    【解决方案1】:

    我现在没有要测试的 Apache 实例,但在我的脑海中,这样的东西应该可以工作:

    RewriteRule ^(.*),(.*),([a-z0-9-_.]+),([a-z0-9-_.]+),([a-z0-9-_.]+)$ $4/$1-$2/$3 [L,R=301]
    
    RewriteRule ^([a-z0-9-_.]+)/(.*)-(.*)/([a-z0-9-_.]+)$ $1.php?n=$2&z=$3&t=$4 [L,NC,NS,NE]
    

    第一次重写将您的旧网址 (1,2,3,4,5) 重定向到新网址 (4/1-2/3),使用 301 告诉搜索引擎放弃旧网址以支持新网址。

    第二次重写采用新格式并将其映射到您的实际脚本。

    请注意在将旧参数转换为新参数时如何删除第 5 个参数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-06-11
      • 1970-01-01
      • 1970-01-01
      • 2015-09-14
      • 1970-01-01
      • 2015-07-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多