我已经合并了大约20个旧页面到一个新的页面,并想要重定向到这些页面的网页链接到新的页面。我一开始将htaccess中的每个字符串都作为重定向301列出,但我认为这样做可以节省处理时间,而不是进行通配符字符串匹配。不幸的是,它失败了,因为我怀疑我想要转到的页面也被通配符捕获了。
例如,我希望重定向、目录listname_lemons.php、listname_figs.php等重定向到www.mydomain.com/ www.mydomain.com/catalog/listname_oranges.php,/listname_addons.php
所以我试了一下,但失败了:
RedirectMatch 301^/catalog/listname_.*$ /catalog/listname_addons.php
我如何修复这个问题,使其不是递归的?
发布于 2015-03-03 08:25:49
你可以在你的正则表达式中使用负向先行:
RedirectMatch 301 ^/catalog/listname_(?!addons\.php).*$ /catalog/listname_addons.php这样,listname_addons.php文件将不会与正则表达式匹配,但其他所有内容都会匹配。
https://stackoverflow.com/questions/28821535
复制相似问题