Angular 角度路由器接管nginx位置

Angular 角度路由器接管nginx位置,angular,nginx,safari,angular-router,nginx-location,Angular,Nginx,Safari,Angular Router,Nginx Location,我有一个由节点提供服务的角度应用程序 我已将nginx配置为为根路由“/”上的节点提供服务。 然后,我为路由“/api”上的另一个api配置了secend位置 现在,当我第一次打开浏览器并尝试获取“/api”时,它工作得非常好。 但如果我先打开angular应用程序,然后尝试获取“/api”。angular(或node)正在尝试处理“/api”路由,因此无法获取“/api”路由 这是我的nginx位置配置 location /api { # some api proxy_pass

我有一个由节点提供服务的角度应用程序

我已将nginx配置为为根路由“/”上的节点提供服务。 然后,我为路由“/api”上的另一个api配置了secend位置

现在,当我第一次打开浏览器并尝试获取“/api”时,它工作得非常好。 但如果我先打开angular应用程序,然后尝试获取“/api”。angular(或node)正在尝试处理“/api”路由,因此无法获取“/api”路由

这是我的nginx位置配置

location /api {
    # some api
    proxy_pass http://127.0.0.1:5984/;
}

location / {
    # node angular app
    proxy_pass http://localhost:3000;
}
这是我的节点配置

const express = require('express');
const http = require('http');
const path = require('path');
const compression = require("compression");

const app = express();

const port = '127.0.0.1:3000';
app.use(compression());
app.use(express.static(__dirname));

app.get('/*', (req, res) => res.sendFile(path.join(__dirname)));

const server = http.createServer(app);

server.listen(3000, "127.0.0.1", () => console.log('App is running'));
更新

在windows中测试后,看起来没有问题

它看起来像一只狩猎虫

我在safari和chrome上测试mac