IIS 7.5 405 方法不允许从 StaticFileModule 进行 PUT
Posted
技术标签:
【中文标题】IIS 7.5 405 方法不允许从 StaticFileModule 进行 PUT【英文标题】:IIS 7.5 405 Method Not Allowed for PUT from StaticFileModule 【发布时间】:2016-08-06 08:37:30 【问题描述】:我正在将第 3 方 xml 编辑器集成到我们的 Web 应用程序中,并且保存功能直接对 Web 服务器上的文件执行 HTTP PUT。
操作系统是使用 IIS 7.5 的 Windows Server 2008 R2
我们安装了 Web API,因此我们已经删除了 WebDAV,并且还更新了 web.config:
<remove name="WebDAVModule" /> under modules
<remove name="WebDAV" /> under handlers
我们更新了网站的处理程序映射以包含“PUT”动词:
静态文件
ExtensionlessUrlHandler-ISAPI-4.0_32bit
ExtensionlessUrlHandler-ISAPI-4.0_64bit
当我们向 Composer 中的一个 xml 文件发出 PUT 请求时,我们仍然在 fiddler 中继续得到以下响应:
HTTP Error 405.0 - Method Not Allowed
The page you are looking for cannot be displayed because an invalid method (HTTP verb) is being used.
Module : StaticFileModule
Notification : ExecuteRequestHandler
Handler : StaticFile
Error Code : 0x80070001
【问题讨论】:
【参考方案1】:当您在模块中的 IIS 中安装应用程序时:
找到 WebDav 并删除您必须在 Handler Mappings 中执行的相同步骤 - 删除 WebDav 并全部刷新。
【讨论】:
【参考方案2】:在 php.cgi 请求限制中添加 PUT、DELETE 动词。
IIS -> 站点 -> DOMAIN.COM -> 处理程序映射 -> 编辑处理您的请求的 CGI 处理程序 -> 请求限制 -> 动词选项卡。
【讨论】:
以上是关于IIS 7.5 405 方法不允许从 StaticFileModule 进行 PUT的主要内容,如果未能解决你的问题,请参考以下文章