.htaccess 301将所有目录重定向到父目录

时间:2014-05-14 21:52:58

标签: .htaccess http-status-code-301

我在WordPress迁移后发生了一个奇怪的问题。

设置新域名后,我使用了:

RewriteRule ^blog/(.*) http://www.newdomain.com/blog/$1 [R=301,L]

将所有博客帖子重定向到新域。这很完美。

我现在找到了一些网址,例如

http://www.olddomain.com/blog/directory/file/我想发送给http://www.newdomain.com/blog/directory/

目录是变量,文件是变量。

是否可以创建一个保留原始规则的htaccess,还可以创建另一个规则来处理文件重定向。

1 个答案:

答案 0 :(得分:0)

这应该有效

RewriteRule ^blog/(.*)/(.*)/? http://www.newdomain.com/blog/$1/ [R=301,L]
RewriteRule ^blog/(.*) http://www.newdomain.com/blog/$1 [R=301,L]

它会保留原始规则,并会将http://www.olddomain.com/blog/directory/file/重写为http://www.newdomain.com/blog/directory/

/?表示最后一个/是可选的,即它会将http://www.olddomain.com/blog/directory/file/http://www.olddomain.com/blog/directory/file重定向到http://www.newdomain.com/blog/directory/