2010-07-13 116 views

回答

2

正如你所说,你的locationpart的正则表达式不接受点。更改字符类包括\.

RewriteRule ^a/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_\.-]+)/([0-9]+)$ /var/www/vhosts/mydomin.com/httpdocs/search.php?searchtext=$1&locationtext=$2&page=$3 [QSA] 

,或者更一般地,如果你的脚本没有与它的问题:

RewriteRule ^a/([^/]*)/([^/]*)/(\d+)$ /var/www/vhosts/mydomin.com/httpdocs/search.php?searchtext=$1&locationtext=$2&page=$3 [QSA] 

这将接受没有斜杠locationtext和SEARCHTEXT任何字符串,即使是空字符串,仍然会重定向到您的搜索脚本。

-1

.htcaccess只接受以适当扩展名结尾的文件,例如.html或.php。

+0

这根本不是真的。 – Jordan 2010-07-13 23:05:31

+0

有趣,这就是我一直听到的。你如何用没有扩展名的URL重写文件?这将有助于知道。我总是被告知它不能完成。 – talkingD0G 2010-07-13 23:28:59