2016-07-25 57 views
0

我想知道你是否可以澄清爲什麼添加我所做的是能夠解決我的問題,因爲雖然我的問題已修復,但我不確定它爲什麼可以工作,並且它在安裝之前不能正常工作。nginx ...爲什麼我需要額外的位置塊?

的舊體制:

我有文件送達,地址如下: http://192.168.33.1:3000/bower_components/... 例如,(http://192.168.33.1:3000/bower_components/animate.css/animate.css

我有一個nginx的反向代理設置在 http://192.168.33.10:80/

我有以下位置塊:

​​

在此設置中,下面的URL將加載: http://192.168.33.10/content/app/index.css

但下面的URL都會給我404,即使訪問文件直接將裝載就好: http://192.168.33.10/content/bower_components/animate.css/animate.css (或任何在其他bower_components文件夾爲此事)

的修復:

張望了一下,我發現打之後,如果我增加了以下位置塊,東西W¯¯烏爾德工作:

location /content/bower_components { 
    proxy_pass http://192.168.33.1:3000/bower_components; 
} 

我明白爲什麼這個額外的位置塊將工作,但我不明白,爲什麼原來的位置塊沒有涵蓋我添加了添加位置塊的規則。

任何建議是怎麼回事?

回答

0

這可能是也可能不是正確的答案,但...

所在地塊:

location /content { 
    proxy_pass http://192.168.33.1:3000/; 
    ... 
} 

是別名與/content開始URI來/,其中缺少終止/

我會用:

location /content/ { 
    proxy_pass http://192.168.33.1:3000/; 
    ... 
} 

,然後修復的/content特殊情況下,如果你需要。

我不知道爲什麼http://192.168.33.10/content/app/index.css似乎雖然工作。

查看this document瞭解詳情。

相關問題