WordPress .htaccess 301 重定向或插件路径的重写规则



非常简单,但对我来说情况非常混乱。我在wordpress上有一个插件,它可以在链接中生成动态结果,如

www.mywebsite.com/testing/myname/1239812398123

我想使用 301 将其更改为:

www.mywebsite.com/myname/1239812398123

请记住,/1239812398123 将动态生成,因此总是不同的。

我已经尝试过:

Redirect 301 /test/ /www.mywebsite.com/myname/

RewriteEngine On
RewriteRule ^test/myname/$ /myname/? [L,R=301]

但没有任何效果:(

谢谢!

你的 uri 模式^test/myname/$匹配时 uri 正好/test/myname/它不匹配/test/myname/12389...,像这样修改你的规则:

RewriteEngine On
RewriteRule ^test/myname/([0-9]+)/?$ /myname/$1 [L,R=301]
好的,

我发现动态部分是字母和数字,所以我修改了代码:

RewriteEngine On RewriteRule ^testing/myname/([a-z0-9]+)/myname/$1 [L,R=301]

它有效,但我也发现这会从插件中抛出错误消息 - 此路径不存在。

是否可以只更改主要部分,但如果有动态部分 - 不要做任何事情

所以情况是这样的:

  • 如果有人进入主要部分www.mywebsite.com/testing/myname/重写将被www.mywebsite.com/myname/

  • 但是,如果有人进入动态部分www.mywebsite.com/testing/myname/123lkj123则不会触发重写,因此它将保持不变www.mywebsite.com/testing/myname/123lkj123

谢谢

最新更新