用PHP和htaccess重写URL

时间:2012-04-26 19:05:34

标签: php .htaccess url-rewriting

我正在尝试重写一些网址,但我不确定如何做我需要的工作。我也很难在网上找到答案,因为它不仅仅是一个简单的重写,而且我不知道要搜索的术语。

所以我可以尝试使用一些帮助,并想知道是否有一个术语用于此类事情。

基本上我想转此:

http://www.domain.com/search.php?search_type=news&searchterms=2012-04-23

进入这个

http://www.domain.com/search/news/2012-04-23

但是,search.php脚本仍然可以正常运行并获取所需的变量。

3 个答案:

答案 0 :(得分:2)

试试这个:

RewriteEngine on
RewriteRule ^search/([^/]+)/([^/]+)$ /search.php?search_type=$1&searchterms=$2 [L,QSA]

[^/]+匹配一系列非斜杠字符。 QSA选项允许/search/foo/bar?baz=1等网址也可以使用。

答案 1 :(得分:0)

如果您要查找要搜索的字词,请尝试“ModRewrite”或“重写规则”。

我不会给出确切的答案,但是这里有一个随意的类似规则我可以​​帮助你解决问题:

RewriteRule ^(.*/)help/([0-9]*?)/(.*)(/?)$ /help.php?category=$2 [QSA,L]

答案 2 :(得分:0)

这里有很多很好的例子: http://httpd.apache.org/docs/2.0/misc/rewriteguide.html

但是,我认为重写网址的查询字符串并不是一个好主意。