2017-03-05 79 views
0

我的nginx.conf包含此:Nginx的子文件夾的位置

server { 
    listen   80; 
    server_name  myserver.com X.X.X.X; 
    root /var/www/html; 

    location/{ 
     proxy_pass http://127.0.0.1:8082; 
     proxy_http_version 1.1; 
     proxy_set_header Upgrade $http_upgrade; 
     proxy_set_header Connection "upgrade"; 
     proxy_set_header Host $host; 
     proxy_buffering  off; 
     proxy_connect_timeout 43200000; 
     proxy_send_timeout 43200000; 
     proxy_read_timeout 43200000; 
     proxy_redirect off; 
     proxy_set_header Proxy ""; 
    } 

    location /api/socket { 
     proxy_pass http://localhost:8082/api/socket; 
     proxy_http_version 1.1; 
     proxy_set_header Upgrade $http_upgrade; 
     proxy_set_header Connection "upgrade"; 
    } 
    location /newapp { 
     #Should this be empty? 
    } 

} 

正如你所看到的,/和/ API /插座指向一個代理。他們兩人都工作。 本來這行不存在:

root /var/www/html; 

我加入吧。我還添加了「location/newapp」。我想是去索引文件的文件夾/無功在/ www/html等當我輸入

myserver.com/newapp

不過,我得到在配置文件中的404我失去的東西?

+0

我還是得到了404.有趣的事情在nginx的error.log中。這是打印:/ var/www/html/newapp失敗(2:沒有這樣的文件或目錄) – oderfla

回答

0

在/ var/www/html裏面創建文件夾/ newapp解決了這個問題。但我不確定這是否是一條可行的路。然而,它的工作。

1

如果您想在URI /newapp(或/newapp/index.html)找到該文件/var/www/html/index.html,你將需要使用alias指令,而不是root指令。

例如:

location /newapp { 
    alias /var/www/html; 
} 

參見this document更多。