코드 이그나이터에서 웹소켓을 돌리는데 드디어 성공! 꽤나 뿌듯하다.


스택 오버플로우와 국내 블로그의 도움을 많이 받았다.







순서대로 오늘 한 일에 대해서 나열해보자면


1. 공유기 포트포워딩 전면 수정


2. etc/httpd/conf/httpd.conf 에서 프록시 설정



띄어쓰기 주의



나같은 경우는 아파치를 이미 돌리고 있어서, 빨간 칸에는 지금 사용하고 있는 웹사이트 포트번호를 적고(ex:80)


하얀 칸에는 Node.js가 사용할 포트 번호를 적으면 된다.



3. Node.js, npm, socket.io 설치


cent os 7에서 설치하였고, yum install nodejs 명령어로 설치했다. 이 명령어로 설치를 하면 lib/node_module 폴더에 설치가 된다.


이후 yum install npm 으로 패키지 매니저를 설치 한 후, /lib 폴더에서 npm install socket.io를 설치


여기서 꽤나 고생을 했는데, 다른 디렉토리에서 socket.io 설치를 진행하게되면 오류가 계속 난다. 이것 말고도 다른 오류가 계속 났는데 이것저것 수정하고 지웠다 깔고.. 시행착오를 겪다보니 설치가 되었다.



4.  Node.js 프레임 워크라고 하는 express 설치


마찬가지로 npm install express 로 설치하면 된다. /lib 폴더에서 진행.



5. app.js 작성




굳이 app.js로 이름 지을 필요는 없는것 같다. 포트는 아까 프록시 설정했던 포트로 설정.


본인은 /var/www/html 위치에다가 놓았고, 가장 중요한 것은


npm link e

npm link socket.io

npm link express


를 해주어야 모듈 오류가 나지 않는다.



6. html 페이지 작성 후 실행


주소와 포트엔 자기 자신의 도메인이나 아이피, 사용하는 포트를 넣어야함


주소:포트/socket.io/socket.io.js 를 넣으면 알아서 socket.io를 찾는다.





7.  node app.js 실행


실제로 데이터를 주고받으려면 이걸 꼭 실행시켜야 하는데.. 살짝 번거롭다.


좀 더 찾아보면 뭔가 좀 더 좋은 방법이 있을 듯 싶다.









테스트 성공

반응형