【发布时间】:2020-01-11 05:24:37
【问题描述】:
我创建了一个 ASP.NET Core 项目,它使用 services.AddSpaStaticFiles()、app.UseSpaStaticFiles()、app.UseSpa() 等为 Angular 应用程序提供服务。
但它直接从http://localhost:1234 为应用程序提供服务,而我想从http://localhost:1234/angular/MyAngularApp1/ 为它提供服务,而我想将http://localhost:1234/ 用于API 控制器。
我怎样才能做到这一点?
注意:我需要它在生产版本中工作。一些解决方案似乎有效,但实际上它们仅在您从 Visual Studio 运行站点时才有效,并且在您发布/部署到 IIS 或 Kestrel 后停止工作。
【问题讨论】:
-
您能解释一下这种方法的用例吗?我们在一个端口上有 api,在另一个端口上有 angular 应用程序(当然在 api 上有 cors 策略),在生产中,api 在子域中运行
-
@DaniëlTulp,当然 - 我们的生产版本必须从有防火墙的网络中访问。网络中的客户端无法直接访问我们的应用程序,但是使用 IIS 和 URLRewrite 设置了一个反向代理来重写以特定前缀开头的请求。任何未启动的请求都将被代理丢弃。我们无权重新配置该代理,所以......
标签: c# angular asp.net-core .net-core asp.net-core-mvc