2014-01-23 72 views
1

我的第一個重寫規則是:毛病我nginx的重寫規則

location/{ 
     root E://w/q/__t/q/; 
     index index.html index.htm; 
    } 

然後我要求127.0.0.1/test.js

我可以在折取test.js文件E://w/q/__t/q/

然後我更新重寫規則,我在我的location和請求路徑中添加了/js/路徑:

location /js/ { 
     root E://w/q/__t/q/; 
     index index.html index.htm; 
    } 

然後我要求127.0.0.1/js/test.js

但nginx的返回404

那麼,什麼是錯我的代碼?如何使它正確?

我nginx的版本是1.5.8,我的操作系統是Windows 7

+0

我改變了標籤,因爲在這個問題中既沒有JavaScript也沒有Apache。 –

+0

舊的網址仍然有效嗎?你重新加載配置('nginx -s reload')嗎? –

+0

@dystroy:我確定我已經重新加載 – hh54188

回答

0

好,你不實際使用重寫命令!

有了這個配置,Nginx的會看E:// W/Q/__ T/Q/JS當你請求127.0.0.1/js/test.js

所以複製您的 /test.js js那裏,或者使用重寫命令刪除你的url中的js部分。

0

你沒有更新root,你可以做到這一點,或使用alias而不是根

location /js/ { 
    root E://w/q/__t/q/js; 
    index index.html index.htm; 
} 

location /js/ { 
    alias E://w/q/__t/q/; 
    index index.html index.htm; 
} 

PS:儘量避免放置indexroot內的位置,這是一個不好的做法,如果您打算使用alias請務必不要使用try_files