我知道其中有一些,但我找不到一个描述我想做的事情。
我有一个我要退休的页面,例如:
www.mysite.com/pages/page_old.php?someargs
我希望_old被剥离,所以页面转到
www.mysite.com/pages/page.php?someargs
我试过
RewriteEngine On
RewriteBase /
RewriteRule ^/pages/page_old.php$ ^/pages/page.php$ [L,R=301]
但它不起作用。
值得注意的是?someargs可以是传递给页面的任何args,所以这必须是灵活的。
答案 0 :(得分:1)
前导斜杠不在规则中测试的URI路径中,因此也不能在正则表达式中。
替换URL是纯文本字符串,不应使用正则表达式字符,因为它们是按字面意思传递的。
您可以尝试这样做:
RewriteRule ^pages/page_old.php /pages/page.php [R=301,NC,L]
查询字符串将为替换网址passed through unchanged