Wordress重定向

时间:2017-12-15 07:57:07

标签: wordpress .htaccess redirect mod-rewrite

我的wordpress网站位于我的域根http://example.com/oldfolder/内的一个文件夹下。现在我已将wordpress文件夹的名称更改为http://example.com/newfolder/,我需要为我在Facebook上分享的帖子创建重定向,因为在Facebook上他们指向http://example.com/oldfolder。我需要创建一个重定向,这样如果用户点击Facebook帖子,它会将他从http://example.com/oldfolder/index.php/post-category/the-post-tile/重定向到http://example.com/newfolder/index.php/post-category/the-post-tile/

我尝试了以下重定向规则:

  1. 重定向301 / oldfolder / http://example.com/newfolder/
  2. RewriteRule ^ / oldfolder /^(.*)/ newfolder / $ 1 [L,R = 301]
  3. RedirectMatch 301 /oldfolder/^(.*)/ newfolder / $ 1
  4. 但以上都没有奏效。我安装了WP重定向插件,但它也没有用。

    有些人可以告诉我如何正确设置重定向规则吗?

    谢谢!

2 个答案:

答案 0 :(得分:0)

您几乎已经使用了数字2 - 检查的条件在URL中的/之后开始,因此您需要将其保留在开头,如下所示:

RewriteRule ^oldfolder/(.*) /newfolder/$1 [L,R=301]

演示:http://htaccess.mwl.be?share=4e06922b-9f70-5c5b-af8c-cf6544eb984d

编辑:哦是的,^在正则表达式的开头只有特殊含义,它将它锚定到字符串的开头,或者否定字符类所以在[]内部,例如:[^az],其中"匹配的字符不是' a'或者' z'"。

答案 1 :(得分:0)

也许你可以试试这个:

RewriteEngine On

RewriteRule ^oldfolder/index\.php/(.*)/(.*)$ http://yoursite.com/newfolder/index.php/$1/$2 [R=301,L]