2013-08-20 35 views
2

在.htaccess重寫查詢字符串後逸出charachters重寫

RewriteCond %{QUERY_STRING} &q=([^&]+) [NC] 
RewriteRule ^(.*/search)$ $1?q=%1 [R=301,NC,L] 

Charackters像E,I,S,U,S,U被轉換到%C4%96,%C4%AE,% C5%A0,%C5%B2,%C5%A0,%C5%B2。有什麼辦法來禁用這些charachters轉換?當搜索字詞變成%C4%96ien而不是希恩時,我的搜索無效。

回答

0

您需要使用NE標誌,以防止雙重編碼在查詢字符串中發生的事情:

RewriteCond %{QUERY_STRING} &q=([^&]+) [NC] 
RewriteRule ^(.*/search)$ $1?q=%1 [R=301,NC,L,NE]