我的 .NET 4.0 webapp 使用集成管道在 IIS 7.5 上的 Windows Server 2008 上运行。
我只想启用“四大”HTTP 动词。根据文档,这应该可以解决问题:
<system.webServer>
<security>
<requestFiltering>
<verbs allowUnlisted="false" applyToWebDAV="true">
<add verb="GET" allowed="true" />
<add verb="POST" allowed="true" />
<add verb="PUT" allowed="true" />
<add verb="DELETE" allowed="true" />
</verbs>
</requestFiltering>
</security>
</system.webServer>
但是,正如您可能已经猜到的那样,事实并非如此。执行OPTION
请求仍会导致“HTTP 200 OK”,就像LOCK
和PROPFIND
其他一些一样。所有这些都没有安装 WebDAV。
删除该<add verb="GET" ...
行会导致 IIS 正确响应 HTTP 404.6(动词被拒绝)错误。
我在这里遗漏了一些明显的东西吗?
Aaand 我大错特错了。IIS 确实以 404 响应,但有一个
<httpErrors>
部分启动并以 HTTP 200 状态为我的“404.html”页面提供服务。