programming/node.js2013.01.09 03:31

WebMatrix IDE를 사용할 때에는  Nodejs Project를 개발하더라도 IIS Express를 통하여 실행되어진다.


여기서 발생하는 문제가 있는데, IIS Express는 기본적으로 http만 지원하기 때문에 socket.io를 사용한 websocket 구현시 실행이 되지 않는다. (Server Error는 발생 안하고 자동으로 XHR로 연결하게 되므로 문제를 찾기가 힘들었다.)


여기저기 검색해 본 결과 IIS Express 8부터는 지원한다는 얘기도 있고, web.config에 webSocket 섹션을 enabled 를 false로 하면 된다는 얘기도 있고, 별 해결책들이 있던데 결론부터 얘기하자면 모두 문제 해결에 도움이 되지 않았다.


일단 applicationhost.config 자체에서 websocket 섹션이 override deny 속성으로 되어있기 때문에 applicationhost.config를 수정하지 않으면 websocket 섹션 자체를 컨트롤 할 수 없다.


다른 해결책으로는 dante라는 다른 websocket application을 쓰라고 하던데, 솔직히 구동환경이 달라졌다는 이유로 코드 자체를 다르게 짜야 된다는건 꺼려지게 된다..



뭐 하지만 websocket만 안쓴다면 IIS의 장점과 WebMatrix2의 편리한 기능을 쓸 수 있으니 개발시에 websocket 필요 여부를 파악하고 개발환경을 구성하는게 좋을 것 같다.

저작자 표시 동일 조건 변경 허락
신고
Posted by 귀뫄뉘

댓글을 달아 주세요


티스토리 툴바