.htaccess:如何转换这个URL?

时间:2010-10-30 07:11:33

标签: .htaccess

使用.htaccess,如何转换此网址

http://engine.searchr.us/web-search.phtml?search=SEARCHED+TEXT

http://engine.searchr.us/web-search/search/SEARCHED-TEXT.html

我应该将.htaccess放在引擎文件夹中吗?

2 个答案:

答案 0 :(得分:0)

这是一个开始:

使查询字符串成为路径的一部分

获取http://example.com/path?var=val表单的网址,并将其转换为http://example.com/path/var/val。请注意,此特定示例仅适用于仅包含字母,数字和下划线字符的单个var = val对。

RewriteCond %{QUERY_STRING} ^(\w+)=(\w+)$
RewriteRule ^/path /path/%1/%2?

您必须对搜索字词中的空格/加号执行某些操作。我真的建议像Martin建议的那样实现某种CGI脚本,但我认为你可以继续重写QUERY_STRING部分,直到所有空格都是破折号(你必须自己解决这个问题!)

祝你好运!

http://wiki.apache.org/httpd/RewriteQueryString http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html

答案 1 :(得分:-1)

我认为只有标准的Apache模块才有可能。 mod_rewrite可能最接近,但无法处理QUERY_STRING。因此,您必须实现某种服务器端代码(CGI,PHP,mod_python)来实现重定向。我个人使用Python实现的CGI脚本。