2010-03-06 73 views
0

好的,所以我有一个网站,用户可以将搜索查询放入使用GET发送数据的表单中。重定向表格获取重写规则请求

当被发送的网址是这样的:/recipes.php?query=taco&ingredients=chili
我想改写它看起来像:/recipes-taco-Ichili.html

所以我添加下面一行到我的.htaccess文件:

RewriteRule recipes\.php\?query=(.*)&ingredients=(.*)$ /recipes-$1-I$2.html [R] 

我的印象是这会将用户重定向到屏蔽页面,但url不会改变。

我有RewriteEngine on和一旦url的形式
/recipes-something-Isomethingelse.html它工作正常。

我在过去使用php做过,但是如果我可以使用.htaccess来做它似乎会很好。

回答

0

不能在RewriteRule得到查询字符串:

RewriteCond %{QUERY_STRING} ^query=([^&]*)&ingredients=(.*)$ 
RewriteRule ^recipes.php$ /recipes-%1-I%2.html [R] 
+0

现在我似乎得到一个302错误信息。 – zmbush 2010-03-06 23:13:06

+0

这不是一个错误,那是一个重定向。 – 2010-03-07 00:24:33

+0

是的,但它没有显示我的网页。它只是说'找到页面'。 – zmbush 2010-03-07 01:58:51