我正在尝试向我的IIS 8.5服务器发送PROPFIND请求,但每次我这样做时都会收到错误“405方法不允许”。我希望你能帮助我。
我已经在谷歌上搜索了这个问题,不幸的是,我找到的解决方案都不能解决我的问题。
我已经检查了我的applicationHost.config,对我来说,所有的设置都是正确的。
我还尝试将WebDAV直接添加到我的web.config:
最后,我启用了失败的请求跟踪,得到了以下结果:
**编辑:**配置文件的相关部分:
applicationHost.config
<handlers accessPolicy="Read, Script">
<add name="WebDAV" path="*" verb="PROPFIND,PROPPATCH,MKCOL,PUT,COPY,DELETE,MOVE,LOCK,UNLOCK" modules="WebDAVModule" resourceType="Unspecified" requireAccess="None" />
...
<verbs allowUnlisted="true" applyToWebDAV="true">
<add verb="TRACE" allowed="false" />
</verbs>
...
<webdav>
<authoring>
<properties allowAnonymousPropfind="true" allowInfinitePropfindDepth="true" />
</authoring>
</webdav>
web.config
<handlers accessPolicy="Read, Execute, Script">
<remove name="WebDAV" />
<add name="WebDAV" path="*" verb="PROPFIND,PROPPATCH,MKCOL,PUT,COPY,DELETE,MOVE,LOCK,UNLOCK" modules="WebDAVModule" scriptProcessor="C:\Windows\System32\inetsrv\webdav.dll" resourceType="Unspecified" requireAccess="None" />
</handlers>
和跟踪的文本:
Event MODULE_WARNING
ModuleName WebDAVModule
Data1 WebDAV Disabled
ErrorCode The operation completed successfully.(0x0)
Event MODULE_SET_RESPONSE_ERROR_STATUS
ModuleName WebDAVModule
Notification MAP_REQUEST_HANDLER
HttpStatus 405
HttpReason Method Not Allowed
HttpSubStatus 0
ErrorCode The operation completed successfully.
1条答案
按热度按时间jobtbby31#
我也遇到过同样的问题。解决方案很简单,只需为网站启用WebDAV。在IIS中,默认情况下每个单独的网站都禁用WebDAV。打开WebDAV创作规则功能后,您可以选择启用它(或禁用...)