【问题标题】:Nginx different locations on one virtual host一台虚拟主机上的 Nginx 不同位置
【发布时间】:2014-01-09 06:19:06
【问题描述】:

我的虚拟主机有以下 nginx 配置:

server {
    listen      80;
    server_name myproject;

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

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

但网络服务器显示以下错误:

location "/" is outside location "/project2"

我想通过http://myproject打开第一个项目,通过http://myproject/project2打开第二个项目

我的配置有什么问题?

【问题讨论】:

    标签: configuration nginx webserver


    【解决方案1】:

    您的server{} 块中应该只有一个root。在此处阅读有关 Nginx 陷阱的信息:http://wiki.nginx.org/Pitfalls 并查看有关“根在位置块内”的部分。

    root放在位置块外,设置为/var/www。将 project1 的索引文件(和其他文件)放在/var/www 中。创建一个文件夹(/var/www/project2),并将project2的索引等放在这个文件夹中。

    您可以省略location /project2 {} 部分,除非您想为此项目指定一些其他设置。如果设置与 project1 完全不同,我建议将 project2 的所有内容移至另一个 server{} 块,并在那里指定其根目录和其他设置。

    【讨论】:

      猜你喜欢
      • 2012-12-24
      • 2014-11-12
      • 2015-03-27
      • 1970-01-01
      • 2011-02-22
      • 2016-09-19
      • 2016-01-03
      • 2023-03-15
      相关资源
      最近更新 更多