2012-04-25 127 views
1

我有一個域有一些獲取參數。 可以說3,所以我們有這個:www.domain.com/?a1=x & a2 = y & a3 = z 我想將其改寫爲:www.domain.com/x/y/z/基本NGINX網址重寫

這是我到現在爲止

rewrite ^/(.*)\/(.*)\/(.*)/$ /index.php?a1=$1&a2=$2&a3=$3? last; 

而這幾乎是做這項工作時,所有的參數都是填充。 但是!當你留下1個參數,你會得到一個404.

那麼,任何NGINX專家誰可以幫我重寫網址? 我還需要排除.js & .css文件,並且出於某種原因也無法執行此操作。

親切的問候, WouterDS

+0

有一個很瑣碎的方式與'try_files'要做到這一點,但只有在使用前端控制器模式時,或者修改瞭解析查詢字符串的方式。 – mrlee 2012-04-25 22:26:22

回答

2

如果你XYZ變量是字母和數字,你可能只是這樣做:

rewrite ^/([a-zA-Z0-9]*)/?([a-zA-Z0-9]*)/?([a-zA-Z0-9]*)/?$ /index.php?a1=$1&a2=$2&a3=$3? last; 
+0

爲我修好了。 但我仍然不能排除我的css&js。 – wouterds 2012-04-25 22:37:34