작성 포맷 :
TEXT 모드, 자동 줄바꿈 사용
HTTP 동사에는 GET과 POST 뿐만 아니라 PUT, DELETE 등의 동사도 있습니다.
하지만 PUT과 DELETE는 웹이 생긴 이래 거의 15년간은 별로 사용되지 않았습니다.
그래서 보안 강화를 위해 웹서버나 웹방화벽에서 GET과 POST만 허용하기도 했었습니다.
지금은 Rest 스타일의 Web API가 많이 사용되고 있어서 PUT과 DELETE도 많이 사용하게 되었습니다.
그런데 ASP.NET으로 Web API를 만들어 서버에 배포했는데 PUT이 안 되는 경우가 있습니다.
PUT으로 호출한 경우 405 에러가 발생하지요..
검색해 보니 WebDAV 모듈과의 충돌로 발생하는 문제라고 합니다.
http://www.asp.net/web-api/overview/testing-and-debugging/troubleshooting-http-405-errors-after-
publishing-web-api-applications
WebDAV는 HTTP로 파일을 업로드할 수 있는 HTTP 확장 규약입니다.
WebDAV가 기능 확장을 위해 HTTP 동사를 7개 추가하는데요..
이 과정에서 설정이 충돌나는 경우가 있다고 하네요.
이 문제를 해결하려면 web.config에 다음과 같이 등록해서
WebDAV를 사용하지 않게 만들면 됩니다.
<configuration>
<system.webServer>
<modules>
<remove name="WebDAVModule" />
</modules>
</system.webServer>
</configuration>
이상입니다. ^^
도움이 되었으면 좋겠네요.. |