在IIS 7中禁用HTTP OPTIONS动词

我的.NET 4.0 webapp使用集成pipe道在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”,就像LOCKPROPFIND和其他一样。 所有这些与WebDAV 没有被安装。

删除<add verb="GET" ...行会导致IIS正确响应HTTP 404.6(Verb Denied)错误。

我在这里错过了很明显的东西吗

艾安,我是错的。 IIS的确在用404响应,但一个<httpErrors>部分踢了进来,并提供了HTTP 200状态的“404.html”页面。