我们有几个WordPress网站已整合到多站点安装中。但是,由于合并后的网站现在是主要新网站的子域,因此我们有许多内容链接不再有效。因此,我们在网站的.htaccess文件中创建了许多重定向规则。
我们的.htaccess中有以下(以及其他)规则:
RedirectMatch 301 ^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(?!page/)(.+)$ http://sub.newsite.com/$4
RewriteRule ^(.*)$ http://sub.newsite.com/ [R=301]
问题在于:如果第二条规则已被注释掉,则第一条规则有效;如果第二条规则没有被注释掉,它会触发,但第一条规则似乎没有。
第一条规则将/yyyy/mm/dd/postname
上永久链接结构http://oldsite.com
的帖子与/postname
上的http://sub.newsite.com/
匹配。第二个规则应该捕获引用旧站点的所有其他URL - 未被其他规则明确引用和重定向 - 并重定向到新站点。
我在这里不理解什么,我应该如何解决这个问题以达到预期效果?非常感谢。