ASE中带有圆点的应用服务返回404

时间:2018-06-06 07:13:05

标签: azure asp.net-web-api2 azure-web-app-service azure-app-service-envrmnt

我在使用Web API 2 / .NET 4.7的Azure应用服务环境(ASE)v2中遇到App Service问题: Request URI在最后一个URI片段中包含一个点,端点在被调用时返回404。

在本地开发环境中,我可以通过更改web.config来解决这个问题:

<system.webServer>
    <modules runAllManagedModulesForAllRequests="true" />
    <handlers>
      <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
      <remove name="ApiURIs-ISAPI-Integrated-4.0" />
      <remove name="OPTIONSVerbHandler" />
      <remove name="TRACEVerbHandler" />
      <remove name="WebDAV" />
      <add name="ExtensionlessUrlHandler-Integrated-4.0"
           path="*"
           verb="*"
           type="System.Web.Handlers.TransferRequestHandler"
           preCondition="integratedMode,runtimeVersionv4.0" />
      <add name="ApiURIs-ISAPI-Integrated-4.0"
           path="*"
           verb="*"
           type="System.Web.Handlers.TransferRequestHandler"
           preCondition="integratedMode,runtimeVersionv4.0" />
    </handlers>
    <directoryBrowse enabled="true" />
  </system.webServer>

更改是添加ApiURIs-ISAPI-Integrated-4.0 - 处理程序。

如上所述,这在本地工作正常,但在部署到ASE App Service时,这似乎被忽略了,我仍然得到404.

目前,作为一种解决方法,我在URI中添加了一个尾随/,但我必须为prod修复此问题。

0 个答案:

没有答案