说我有一个用AngularJS编写的Dog应用程序,我现在正在添加一个用Angular4编写的新Grooming子应用程序
现在我有一个nginx服务/api
到后端php服务器,重写了/api
前缀(所以它不知道它在子路径中)和/
由前端AngularJS应用程序提供服务。这是两个不同的应用程序,每个应用程序位于自己的服这个现在工作正常。
现在我们正在添加一个用ng4编写的Grooming应用程序,它应该像主应用程序的模块一样服务,但是来自完全不同的服务器目录,例如/dogs/315/grooming
如果我对匹配location /dogs/315/grooming
的位置进行硬编码,则会加载ng4 index.html并尝试投放该应用,但如果我使用正则表达式location ~ ^/dogs/([0-9]+)/grooming
,则会跳过它并加载{{} 1}}位置。
Grooming应用程序需要像/
这样的网址来设置上下文,然后它会使用其他网址片段来实现自己的功能。
/dogs/315/*
块中的try_files $uri $uri/ $uri.html /index.html
会继续将子应用程序发送回父级。
这里有一些示例片段,修饰部分已被重写并改变了许多方式,我只是将它作为一个例子:
location ~ ^/dogs/([0-9]+)/grooming
完全贴在梳理部位;尝试了很多事情,我可能会走错路。
答案 0 :(得分:0)
将答案作为评论发布,因为我需要格式化 请尝试以下
location ~ ^/dog/([0-9]+)/grooming/ {
alias /home/forge/dog-grooming.greatapp.com/current/dist/;
index index.html;
try_files $uri $uri/ =404;
}