带有 IIS 的 ASP.NET Core - 不允许使用 HTTP 动词

标签 asp.net iis asp.net-core asp.net-core-webapi

我们有一个 ASP.NET Core 2.0 该网站还提供了几个简单的 网络 API 用于 UI 增强目的的方法。

网络 API 下本地运行时,调用按预期工作IIS Express ,但是当我们部署到我们的 IIS 8.5 生产网络服务器,我们在制作 HTTP DELETE 时收到以下错误和 PUT要求...

405 Method Not Allowed

经过一些网络搜索,我们发现了一些建议删除 IIS 的帖子。 WebDAV 模块。我们在 IIS 中禁用了它(它是我们的服务器),我们还尝试了以下方法:
  • 禁用 WebDAV
  • 启用 WebDev 并设置 Allow verb filtering = False
  • 将处理程序映射设置为允许请求限制设置中的所有动词:aspNetCore , WebDAVExtensionlessUrlHandler-Integrated-4.0

  • 以上步骤都没有解决我们的问题。

    任何建议/方向将不胜感激。

    最佳答案

    这对我有用(netcore 2.0)

    <system.webServer>
      <modules runAllManagedModulesForAllRequests="false">
        <remove name="WebDAVModule" />
      </modules>
    </system.webServer>


    在这里找到:https://www.ryadel.com/en/error-405-methods-not-allowed-asp-net-core-put-delete-requests/

    关于带有 IIS 的 ASP.NET Core - 不允许使用 HTTP 动词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48188895/

    相关文章:

    c# - 如何在使用相对 URL 时更改 http/https 协议(protocol)

    c# - SQL 行更新在 C# 中不起作用

    asp.net - app_offline 文件中的图像

    visual-studio - Visual Studio Web 项目有 IIS 配置警告

    c# - SupportedUICultures 不显示所有文化

    javascript - 如何使用 ASP.NET WebForms 中的 JavaScript 将 FormView 中的 DropDownList 中的文本获取到 TextBox 中?

    php - 仅仅是 web.config 的存在导致我的 WordPress 网站出现 500 Internal server error

    jquery - 将 jQuery 添加到 ASP.NET MVC 应用程序

    c# - services.AddControllersWithViews() 与 services.AddMvc()

    c# - 如何在深度调用中使用 serilog 跟踪请求