htaccess重定向动态获取请求

时间:2015-02-04 22:39:03

标签: .htaccess redirect get

我需要从:

重定向(而不仅仅是重写)
example.com/home/?s=keyword

为:

example.com/search/keyword

目前我正在尝试使用以下内容:

RewriteCond %{HTTP_HOST} ^example\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.example\.com$
RewriteRule ^/?$ "http\:\/\/www\.example\.com\/home\/" [R=301,L]

RewriteCond %{QUERY_STRING} ^/s=(.*)$
RewriteRule ^(.*?)$ search/$1 [NC,R,L]

我知道这是错的,但我不知道如何解决它......

1 个答案:

答案 0 :(得分:1)

尝试:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$
RewriteRule ^/?$ http://www.example.com/home/ [R=301,L]

RewriteCond %{THE_REQUEST} \ /+home/?\?s=([^&\ ]+)
RewriteRule ^home/?$ /search/%1? [L,R]

RewriteRule ^search/(.+)$ /home/?s=$1 [L]