2010-07-13 105 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