2

我的 Nginx 配置有问题。我有两个单独的 angularjs2 项目,它们应该与一个 nginx 实例一起使用。应用程序分为两个文件夹 /admin 和 /webapp。

现在我要做的是,当我调用 mydomain.com 时,它应该在 /webapp 中打开应用程序。如果我调用 mydomain.com/admin 它应该打开管理应用程序(这也是一个 angularj2 应用程序)。

到目前为止,我尝试过的是以下内容:

server {
  listen       80;
  server_name  localhost;
  root /usr/share/nginx/html/webapp;    
  index index.html index.htm;

  location / {
    index index.html index.htm;
    try_files $uri /index.html;
  }

  location /admin/ {
    alias /usr/share/nginx/html/admin/;
    try_files /admin/$uri /admin/index.html;
  }
}

我希望我能得到帮助。提前致谢!

4

1 回答 1

1

尝试:

root /usr/share/nginx/html/webapp;    
index index.html index.htm;

location / {
    try_files $uri $uri/ /index.html;
}

location /admin {
    root /usr/share/nginx/html;
    try_files $uri $uri/ /admin/index.html;
}

root指令优于该alias指令。有关详细信息,请参阅此文档

index指令是继承的,不需要重复。

这些$uri/条款将鼓励nginx将 a 附加/到目录的 URI 中,以便index指令正常工作。我还更正了你的一些try_files条款。有关详细信息,请参阅此文档

于 2017-01-13T10:12:15.803 回答