您将如何应用重写规则将旧链接结构重定向到新链接结构?



我的网站上有以下结构的链接:

  1. site.com/category/1/cat1name(可以有破折号(
  2. site.com/lessons/1/lesson1name(可以有破折号(
  3. site.com/exercise/1/exname(可以有破折号(

我将结构更改为

  1. site.com/guitar-lessons/cat1name/1
  2. site.com/guitar-lesson/lesson1name/1
  3. site.com/guitar-lesson-ex/exname/1

我正在使用 laravel,我知道我可以使用路由来解决这个问题,但我想使用从旧链接结构到新链接结构的 301 重定向。

我不确定如何创建适当的重写规则来考虑不同的 url 部分和重新排序。

我读过的例子似乎都有其细微差别,以满足非常具体的需求。作为重写规则的新手,我不确定如何构建规则。对于上面的案例 1,我尝试了

RewriteRule ^category/(.*)$/(.*)$ guitar-lessons/$2/$1 [NC,R=301]

但是使用这个 htaccess 测试器不会产生匹配。

有什么建议吗?

谢谢!

好吧,我不应该这么快发布。我意识到我在规则的第一部分中不需要 $ 符号。我看过这个例子,认为我需要使用"$"。规则正在工作:

RewriteRule ^category/(.*)/(.*) guitar-lessons/$2/$1 [NC,R=301]

最新更新