Я пытаюсь понять, как IIS 7.5 обрабатывает запрос POST и PUT.
Я пишу службу RESTful с использованием инфраструктуры OpenRasta. Работа POST работает без каких-либо проблем, но операция PUT для одного и того же URL-адреса не работает. Он возвращает ошибку, как показано ниже.
Detailed Error Information
Module: IIS Web Core
Notification: MapRequestHandler
Handler: StaticFile
Error Code: 0x80070002
URL-адрес выглядит следующим образом: "http://localhost/MyService/Resource.Something.manifest"
Такая же настройка отлично работает в Visual Studio IIS.
Решение
В основном по умолчанию ExtensionlessUrlHandler не принимает команды PUT и DELETE. Просто добавьте их.
<add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="Script" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />