Node.js는 http모듈을 내장하고 있기 때문에 자체만으로도 웹 서버로 동작할 수 있다.
그러나...
새로운 서비스를 Node.js로 구현하려고 하는데, 새로 살 서버는 없고 기존의 서버를 재활용해야 하는데 기존 서버들은 이미 웹서비스가 돌아가고 있어 80포트가 이미 사용 중이다.
이렇게 되면 Node.js로 웹 어플리케이션 하나를 만들어도 80포트를 쓸 수가 없기 때문에 접속하려면 URL 뒤에 포트번호를 붙여야된다고 하는 형태가 되어 버린다.
어떻게 방법이 없을까?
구글링에 착수해보니 당연히 이런 고민을 하는 사람들이 많은지 아파치 웹서버의 프록시 서버 기능을 사용하여 80포트로 접근하면 웹서버에서 Node.js로 돌아가고 있는 서비스로 던져주게끔 구현한 사례들을 찾을 수 있었다.
그런데 회사에서는 아파치가 아니라 Webtob를 사용한다. -_-
이 녀석은 국내에서만 사용하는지라 Webtob와 Node.js 연동에 대한 글은 구글링을 해도 찾을 수가 없었다.
그래도 아파치에서 되는데 Webtob에서 안될까...
티맥스 테크넷에 접속해서 Webtob의 프록시 서버 설정하는 부분을 찾아보았다.
관리자 문서 중에 REVERSE_PROXY 절이라는 부분을 읽고 개발 서버에 적용해보았는데 예상 외로 놀랍도록 간단하다.
.png)
(이 예시에서는 Node.js가 3000번 포트 사용)
http.m 파일을 컴파일하고 나서 Webtob서비스를 재시작하면 80포트로 접근가능.
.png)