티스토리 뷰

미니 프로젝트로 부트스트랩의 앨범 템플릿을 이용해 간단한 앨범형 게시판을 만들었다.

node.js가 꽤 재미있어서 이거저거 기능을 추가하다보니 내 도메인으로 한 번 퍼블리싱을 해보고 싶었다.

마침 godaddy.com에서 .com 도메인을 1년에 1300원으로 세일을 하고있다


  1. godaddy.com에서 도메인 사기
    • 구글 데스크탑버전에서 검색창에 '도메인 싸게 구입'이라고 입력을 하면 프로모션 링크가 나온다. 해당 링크를 타고 들어가서 구입을 하면 1300원가량에 구입을 할 수 있음
  2. godaddy.com과 aws의 EC2인스턴스 연결시키기
    • 위 방법으로 회원가입후 도메인 구입을 마치고 홈 화면으로 돌아가보자 내 이름을 클릭하면 나오는 확장메뉴에서 My products를 클릭하면 내가 신청한 도메인이 리스트에 있다 거기서 DNS라고 쓰인 버튼을 누르자.
    • Records 내용이 나오는데 type A로 된 항목을 편집을 누르고서 value만 ec2의 elastic ip 혹은 public ip로 바꿔주자 포트번호는 입력 할 수 없다. public ip 같은 경우는 인스턴스를 재부팅하면 바뀔 수도 있기때문에 elastic ip를 만들어주자 워낙 간단하니 구글링 ㄱㄱ
    • 어느정도 시간이 지나고나서 http://구입한도메인.com:3000으로 접속을 해보면 node.js 서버가 켜져있다면 아마 정상적으로 접속이 될 것이다.
    • 그러나 포트번호가 너무 거슬린다. 방법을 찾아보니 그냥 주소만 입력하고 포트를 입력하지 않으면 기본적으로 80번 포트로 접속이 된다고 한다. 그래서 보안그룹에서 포트를 열고 ./bin/www 파일에 3000번으로 되어있는 포트 번호를 80번으로 바꾸고 sudo npm start로 서버를 켜봤지만 안된다. 다시 3000번으로 포트를 돌려놓고..
    • 구글을 좀 더 뒤져보니 nginx를 사용해서 Proxy서버를 구축해주는 방법이 일반적이라고 한다.
      1. sudo apt-get install nginx
      2. sudo vi /etc/nginx/sites-available/default를 열어보면 이미 내용이 있는데 전부 지워주고 아래 내용을 입력하고 저장!
        server {
            listen 80;
            server_name 내도메인.
            location / {
                
        proxy_pass http://0.0.0.0:3000;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection 'upgrade';
                proxy_set_header Host $host;
                proxy_cache_bypass $http_upgrade;
            }
        }
      3. sudo service nginx restart
    • 잘 되는지 http://도메인.com 으로 접속을 시도해보자. 안된다면 보안그룹에서 80번 포트를 열어놨는지 확인 해볼 것
    • 잘 된다면 인스턴스와의 연결을 종료해도 계속 서버가 살아 있을 수 있도록 해주기 위해 pm2라는 nodejs 모듈을 이용해서 노드서버를 켜주고 Putty세션을 종료해주면 끝!


댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함