Redirect 301将子目录路径重定向到单个目录

Redirect 301将子目录路径重定向到单个目录,redirect,Redirect,由于我正在进行站点迁移,我一直在努力解决301重定向问题,希望能得到一些帮助 我要将整个域www.oldsite.com移动到新域www.newsite.com。我计划通过将DNSto点更改为新服务器来实现这一点。在新站点上,我正在尝试在.htaccess文件中设置301重定向,以便为任何不存在的URL提供目的地 大多数重定向都很好: 重定向301/old-dir-1//new-dir-1/ ... 很好 但是,如果我还想重定向子目录: 重定向301/old-dir-1/subdir//new-

由于我正在进行站点迁移,我一直在努力解决301重定向问题,希望能得到一些帮助

我要将整个域www.oldsite.com移动到新域www.newsite.com。我计划通过将DNSto点更改为新服务器来实现这一点。在新站点上,我正在尝试在.htaccess文件中设置301重定向,以便为任何不存在的URL提供目的地

大多数重定向都很好: 重定向301/old-dir-1//new-dir-1/ ... 很好

但是,如果我还想重定向子目录:

重定向301/old-dir-1/subdir//new-dir-1/ ... 实际结果是: www.newsite.com/new-dir-1/subdir 我不想通过子目录。 我尝试了大量的组合和教程,并重写了如下规则: 重写规则^old-dir-1/*/new-dir-1/$1[R=301,L]


还有无数其他的变化。。。有什么想法吗

如果有人遇到这样的问题,下面是我如何解决的:

1我确保没有应用程序逻辑与重定向冲突。在这个特殊的例子中,WordPress还使用了一个需要禁用的重定向插件

2我修改了301条目的行顺序,将最具体的URL放在顶部,不太具体的放在下面

即,首先: 重定向301/old-dir-1/subdir//new-dir-1/ 然后。。。 /old-dir-1//new-dir-1/