2013-12-20 121 views
0

我有我的虛擬主機以下nginx的配置:Nginx的一個虛擬主機上的不同位置

server { 
    listen  80; 
    server_name myproject; 

    location/{ 
     root /var/www/project1; 
    } 

    location /project2 { 
     root /var/www/project2; 
    } 
} 

但Web服務器顯示以下錯誤:

location "/" is outside location "/project2" 

我想先打開項目通過:http://myproject和第二個項目通過http://myproject/project2

我的配置有什麼問題?

回答

0

您的server{}區塊中只能有一個root。閱讀關於Nginx的陷阱:http://wiki.nginx.org/Pitfalls並查看關於'Root inside location block'的部分。

root放在位置塊外,並將其設置爲/var/www。將項目1的索引文件(和其他文件)放入/var/www。創建一個文件夾(/var/www/project2)並將project2的索引等放置在此文件夾中。

您可以省略location /project2 {}部分,除非您想爲此項目指定其他設置。如果設置與project1完全不同,我建議將project2的所有內容移動到另一個server{}塊,並在其中指定其根目錄和其他設置。

相關問題