htaccess从url查询重写

时间:2014-07-21 10:12:28

标签: regex apache .htaccess mod-rewrite redirect

我需要一些帮助才能尝试将查询重定向到网址。

www.example.com/?categoryID=79
需要重定向到
www.example.com/catname

其中catname只是一个字符串,它没有变量。

这是我到目前为止所做的尝试:
我开始时采取了一种拙劣的做法,但却失败了:

redirect 301 /?CategoryID=79 http://www.example.com/catname/   

then i moved on to mod_rewrite :  
RewriteCond %{QUERY_STRING} CategoryID=79$ 
RewriteRule (.*) /catname/? [R=301,L] 

两者都不起作用,我实际上是在踩踏 任何帮助,将不胜感激。

为了清楚起见,最后我会将这些规则中的许多规则重定向到各种类别名称。

重要 - /catname显示正确的网页是不够的,查询参数的请求必须重定向到新网址。

1 个答案:

答案 0 :(得分:1)

此规则适用于作为.htaccess中的第一条规则

RewriteEngine On

RewriteCond %{THE_REQUEST} \s/+\?CategoryID=79[&\s] [NC]
RewriteRule ^ /catname/? [R=302,L]