重写.htaccess url后重定向旧页url
我已经用htaccess重写了我的url,现在我想把旧的url重定向到新的,但我还是不知道怎么做 这是我使用的重定向规则:重写.htaccess url后重定向旧页url,.htaccess,mod-rewrite,redirect,rewrite,rule,.htaccess,Mod Rewrite,Redirect,Rewrite,Rule,我已经用htaccess重写了我的url,现在我想把旧的url重定向到新的,但我还是不知道怎么做 这是我使用的重定向规则: RewriteRule ^page/([^/]*)/$ /page.php?name=$1 [L] 旧url的外观如下:page.php?name=page name 新的url如下所示:/page/page name/当您需要使用GET参数重定向url时,这有点复杂 下面是一个技巧: RewriteRule ^page\.php$ %{QUERY_STRING} [C]
RewriteRule ^page/([^/]*)/$ /page.php?name=$1 [L]
旧url的外观如下:page.php?name=page name
新的url如下所示:/page/page name/当您需要使用GET参数重定向url时,这有点复杂 下面是一个技巧:
RewriteRule ^page\.php$ %{QUERY_STRING} [C]
RewriteRule name=(.*) /page/$1/? [R=301,L]
解释:
- 首先,将
重定向到page.php?name=page name
?name=page name
- 然后,您要求使用以下规则获得此结果(带有
标记)[C]
- 第三,将用
拾取的(.*)
重定向到页面名
页面名
- 最后一个技巧是,如果您不放置最后一个
,您的查询字符串将附加到结果中,并且您将拥有此类url:?
。使用无用的页面/页面名称/?名称=页面名称
删除旧的GET参数?
^name=(*)$
(请注意,它在基本测试archi上运行良好)