默認情況下,IIS拒絕PUT和Delete請求,原因為IIS默認注冊了一個名為"WebDAVModule"的自定義HttpModule導致的,WebDAV的全稱為"Web-based Distributed Authoring and Versioning",它是一個在多用戶之間輔助協同編輯和管理在線文檔的HTTP擴展,該擴展使應用程序可以直接將文件寫到Web Server上,同時支持文件的枷鎖和版本控制.
微軟是推動WebDAV成為一個標准的主導力量,它自己利用自定義的HttpModule實現了針對WebDAV的支持.但是這個默認注冊(注冊名為"WebDAVModule")會拒絕HTTP方法為PUT和DELETE的請求,解決這個問題最為直接的方式就是利用如下的配置將注冊的HttpModule移除.
<configuration> <system.webServer> <modules runAllManagedModulesForAllRequests="true"> <remove name="webDAVModule"/> </modules> <system.webServer> </configuration>