我試圖重寫某些URL與下面的nginx重寫規則Nginx的重寫適當引用符號引起問題
rewrite ^/some\/url\/(.*)\/$ /some/url/?filter=$1;
重寫似乎並沒有工作,如果查詢包含&
例如
?filter=key:abcd & efgh
這我正確引用到
?filter=abcd%20%26%20N%20efgh
我的問題是隻有重寫URL /som/url/key:abcd%20%26%20N%20efgh
不起作用。如果我訪問它像/some/url/?filter=abcd%20%26%20N%20efgh
它工作正常。
我錯過了什麼嗎?
謝謝。
我有類似的問題與Apache的mod_rewrite。我認爲在重寫規則處理之前有一些url解碼完成。最後,我必須將原始URL傳遞給PHP,並直接解析$ _SERVER ['REQUEST_URI']。 – 2011-05-10 19:07:40