我在LAMP堆栈上安装了Wordpress,如果我在http://example.com/abc/发帖,我希望将http://example.com/abc/def.html等网址重定向到http://example.com/abc/。 (请注意,此处由“def”占用的插槽应该没有任何斜杠;这意味着http://example.com/wp-content/下的内容应该不受阻碍。)
我尝试过的重写是:
RewriteRule ^(/[^/]+/)[^/]+\.html$ $1 [R=301,L]
据我所知,它说:“取两个斜线和它们之间的所有东西,不再匹配斜线,以.html结尾,然后重定向到第一个捕获的组。”但是,有了这些,我可以访问http://example.com/abc/,但尝试访问http://example.com/abc/def.html时获得404.
我应该怎么做才能实现所需的重定向行为?
谢谢,
答案 0 :(得分:1)
尝试此规则:
RewriteRule ^/?([^/]+/)[^/.]+\.html$ /$1 [NC,R=301,L]
使前导斜杠可选,因为.htaccess没有它并在第一次斜杠后调整部分。确保这是你的第一条规则。