如何将子站点请求映射到父站点?

时间:2019-11-20 13:17:09

标签: c# asp.net-mvc asp.net-core iis web-config

例如,在 https://my-site.com 处,我们有一个整体式ASP.NET应用程序。 在其内部,路径 / api 中有许多控制器,例如

https://my-site.com/api/user

https://my-site.com/api/order

https://my-site.com/api/cart

现在,我们正在尝试将整体拆分为单独的服务。这些服务是单独的.NET Core应用程序。他们将逐步替换 / api 路径中的所有那些控制器。因此,尽管整体中的某些控制器仍然可以正常工作,但我们需要添加单独的应用程序来处理对 https://my-site.com/api/user 的请求。

该站点托管在IIS中。如果我们为https://my-site.com网站创建子应用程序 api ,则IIS开始将所有对 / api / whatever 的请求映射到< strong> api 子应用程序,而不是父网站。如何将IIS映射请求仅针对 api 子应用程序中确实存在的路径,而将其他映射到父单块?

到目前为止我们已经尝试过的...在 system.webServer 中的整体式 web.config 中,我们在 handlers 中添加了一个条目这样的部分:

<add name="api-order" verb="*" path="api/order*" type="Monolith.Controllers.Api.Order" preCondition="managedHandler"/>

因此,我们希望使IIS将 / api / order 请求映射到整体,从而忽略现有的 api 子应用程序。

但是,事实证明IIS首先选择了子应用程序,然后又检查了它的 web.config

那么有什么方法可以欺骗IIS,并使其仅将某些请求映射到 api 子应用程序?

0 个答案:

没有答案