以编程方式禁用 WebDav .NET 3.1 或更高版本
Disable WebDav Programatically .NET 3.1 or grater
我正在使用 IIS 8 托管 .NET Core 3.1 应用程序。
最近,我发现 DELETE http 方法没有启用。
经过一些研究,我发现是 WebDavModule 阻止了它。
几周来我一直在尝试以编程方式禁用此功能,我可以设法做到这一点。
现在,我已经能够从 IIS 的映射和模块中手动删除 WebDav。虽然,每次重新部署应用程序时,它都会重新启动。
一些注意事项:
通过在 webconfig.json 文件中将其配置为禁用,我找到了以前版本的 .Net 核心和 ASP.NET 的解决方案,但与新版本无关。
有谁知道如何以编程方式禁用 WebDav 或至少以编程方式将其配置为所有 DELETE 请求?
谢谢大家!
您可以手动编辑 Web.config 以禁用 WebDAV。
在 Web.config 文件中找到 部分中的部分。在 之前添加 <remove name="WebDAVModule"/>
。在 部分中找到该部分。在.
之前添加<remove name="WebDAV"/>
您可能需要回收应用程序池或重新启动 IIS 才能使此更改生效。
<system.webServer>
<modules>
<!-- Remove WebDAV module so that we can make DELETE requests -->
<remove name="WebDAVModule" />
</modules>
<handlers>
<!-- Remove WebDAV module so that we can make DELETE requests -->
<remove name="WebDAV" />
</handlers>
</system.webServer>
我正在使用 IIS 8 托管 .NET Core 3.1 应用程序。
最近,我发现 DELETE http 方法没有启用。
经过一些研究,我发现是 WebDavModule 阻止了它。
几周来我一直在尝试以编程方式禁用此功能,我可以设法做到这一点。
现在,我已经能够从 IIS 的映射和模块中手动删除 WebDav。虽然,每次重新部署应用程序时,它都会重新启动。
一些注意事项: 通过在 webconfig.json 文件中将其配置为禁用,我找到了以前版本的 .Net 核心和 ASP.NET 的解决方案,但与新版本无关。
有谁知道如何以编程方式禁用 WebDav 或至少以编程方式将其配置为所有 DELETE 请求?
谢谢大家!
您可以手动编辑 Web.config 以禁用 WebDAV。
在 Web.config 文件中找到 <remove name="WebDAVModule"/>
。在
<remove name="WebDAV"/>
您可能需要回收应用程序池或重新启动 IIS 才能使此更改生效。
<system.webServer>
<modules>
<!-- Remove WebDAV module so that we can make DELETE requests -->
<remove name="WebDAVModule" />
</modules>
<handlers>
<!-- Remove WebDAV module so that we can make DELETE requests -->
<remove name="WebDAV" />
</handlers>
</system.webServer>