我需要一个.htaccess mod_rewrite的解决方案,将采取这样的cgi的搜索查询:
www.mydomain.com/cgi-bin/finda/therapist.cgi?Therapy_Type=Pilates培训与市=洛杉矶&状态= CA
并返回匹配在浏览器的地址栏的结果看起来是这样的:
www.mydomain.com/therapists/Pilates-Training-Los-Angeles-CA.html
或者更好的是:
www.mydomain.com/therapists/pilates-training-los-angeles-ca.html
请注意该数据库包括一个,两个或三个词+空格值...
例如:
Therapy_Type=Pilates Training <- includes a space
City=Los Angeles <- includes a space
State=CA <- no space
我用工具在: http://www.generateit.net/mod-rewrite/生成以下重写规则:
RewriteEngine On
RewriteRule ^([^-]*)-([^-]*)-([^-]*)\.html$ /cgi-bin/finda/therapist.cgi?Therapy_Types=$1&City=$2&State=$3 [L]
这并不工作(查找搜索匹配),并产生结果页面,但由于参数值在他们的空间,我们结束了,看起来像这样的网址:
www.mydomain.com/therapists/Pilates%20Training-Los%20Angeles-CA.html
我花了好几天在这个论坛和其他人试图找到一个解决办法来摆脱这些20%(编码空间),因此最终返回的URL看起来像1)或2)。
我知道有人在这里必须知道如何做到这一点...帮助;-)