0

我知道其中有一些,但我找不到一个描述我想做的事情。

我有一个要退出的页面,例如:

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 可以是传递给页面的任何参数,所以这必须是灵活的。

4

1 回答 1

1

前导斜杠不在规则中测试的 URI 路径中,因此它也不能在正则表达式中。

替换 URL 是纯文本字符串,不应使用正则表达式字符,因为它们是按字面传递的。

你可以试试这个:

RewriteRule ^pages/page_old.php  /pages/page.php [R=301,NC,L]

查询字符串将原封不动地传递给替换 URL

于 2013-04-24T08:44:41.977 回答