WebResource.axd 在 azure appservice 上找不到错误

WebResource.axd not found error on azure appservice

当我将 Asp.net webform (framework 4.7) 网站迁移到 azure 时,我遇到了 WebResource.axd 文件的 404 未找到错误,我已将处理程序手动包含在 web.config 中,如下所示

  <system.webServer>
    <handlers>
      <add name="AssemblyResourceLoader-Integrated-4.0" path="WebResource.axd" verb="GET,DEBUG" type="System.Web.Handlers.AssemblyResourceLoader" 
           preCondition="integratedMode" />
    </handlers>
  </system.webServer>

我也尝试在 system.web 中配置处理程序,但没有成功。

  <system.web>
    <httpHandlers>
      <add   path="WebResource.axd" verb="GET,DEBUG" type="System.Web.Handlers.AssemblyResourceLoader"/>
    </httpHandlers>
  </system.web>

它仅在我在 IIS 上本地部署网站时有效。有人以前遇到过这个吗?我是否应该在 azure 中进行任何特定配置才能使其正常工作?

在本地点击你的webapp,然后输入F4,在Properties,将managed pipeline modeclassic切换到integrated,修复它。

或者您可以在 web.config:

添加处理程序
<handlers>
  <add name="AXD-ISAPI-4.0_32bit" path="*.axd" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" /> 
</handlers> 

参考这个issue.