2012-02-20 52 views
0

我正在創建一個重寫規則,該規則應包含一個參數,該參數可能包含字符%,但是當我將其添加到我的規則時,它會打破我的網站,並且每個頁面都會返回錯誤:htaccess重寫規則接受%字符參數

RewriteRule ^sale/([a-zA-Z0-9_-%]+)$ browse.php?id=$1 

我想要的參數可以包括字符,數字0到9以及特殊字符-_%

如果我刪除%它工作正常,但很明顯,我想,要被接受,例如網址字符:

http://www.websitename.com/sale/test%20parameter

回答

2

阿帕奇轉換percentage-在將它提供給mod_rewrite之前,將一個URL內的編碼字符加入到URL中所以如果你想在你的url中接受%20,你只需要在你的RewriteRule中添加一個空格。但是請注意,空格也是爲了區分Regulare表達式和RewriteRule中的替換字符串,所以在空間需要使用\