发布到 mini-profiler-results 给出 404,但仅在实时部署的站点上

Mar*_*nox 5 web-config asp.net-mvc-routing http-status-code-404 mvc-mini-profiler

页面加载后,我在从 MiniProfiler 获取 POST 结果时遇到了一些问题。

我试过 GET,它的工作原理。但是 POST 返回 404 错误,就好像它在寻找静态文件一样。

错误的镜头

任何有关我下一步可以尝试的帮助或提示将不胜感激。

这是我到目前为止所看到的:

这不是我的路线

GET/POST 问题会让我怀疑我的路线有问题 - 除了......

此问题仅发生在实时服务器上。在本地,路由运行良好。

可能是:runAllManagedModulesForAllRequest?

我读过的大部分内容都建议将其设置为 true。然而,我的问题似乎与此相矛盾。

runAllManagedModulesForAllRequest="true"设置为 true时出现问题,设置为 false 时修复。我想将它设置为 true ,因为我的知识不够丰富,无法从默认设置中更改它。

添加处理程序没有帮助

其他资源,比如这个(在 MP 主页的底部),建议将此行添加到 web.config 中的 system.webServer.handlers。

据我了解,即使 runAllManagedModulesForAllRequests 设置为 false,这也应该允许 MP 运行。对我来说,这两种方式都没有影响。

<add name="MiniProfiler" path="mini-profiler-resources/*" verb="*" type="System.Web.Routing.UrlRoutingModule" resourceType="Unspecified" preCondition="integratedMode" />
Run Code Online (Sandbox Code Playgroud)

但是 Web.Config 中的处理程序部分是否相关?

我没有特别的理由认为这是...

我只是不完全理解它在做什么,想知道这是否可以解释本地版本和部署版本之间的差异。

<handlers>

  <remove name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" />
  <remove name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" />
  <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
  <add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
  <add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
  <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />

    <add name="MiniProfiler" path="mini-profiler-resources/*" verb="*" type="System.Web.Routing.UrlRoutingModule" resourceType="Unspecified" preCondition="" />
</handlers>
Run Code Online (Sandbox Code Playgroud)