2014-05-23 80 views
1

我遇到了我的重寫規則問題。它不包括重寫路徑中的文件夾。例如:Nginx重寫爲包含文件夾

/randomstring/app.js重寫爲/var/www/CDN/Dev/App/app.js

/randomstring/dashboard/app.js重寫爲/var/www/CDN/Dev/App/app.js,但它應該重寫/var/www/CDN/Dev/App/dashboard/app.js

我不明白爲什麼這是行不通的。 (.*)如果我沒有弄錯,爲什麼不包含dashboard/部分?

location ~* (css|js)$ { 
    rewrite ^/([^/]*)/(.*).(css|js)$ /$2.$3 ; 
    root /var/www/CDN/Dev/App; 
} 

回答

1

我認爲沒有理由使用改寫這裏。別名應該足夠了

location ~* /[^/]+(/.+\.(css|js))$ { 
    alias /var/www/CDN/Dev/App/$1; 
} 
+0

謝謝,作品像魅力! –

1
location ~* \.(css|js)$ { 
    rewrite ^/([^/]+)/(.+)\.(css|js)$ /$2.$3 ; 
    root /var/www/CDN/Dev/App; 
} 
+0

完美的工作,謝謝。 –