node.js

Hello World - 웹 서버 생성하기

node.js 파일 생성하기

node.js는 파일 확장자가 js 또는 node이어야 합니다. 아래 코드를 입력하여 node.basic.js로 저장합니다.

// node.basic.js
console.log('Hello World');

터미널에서 아래 명령어를 입력하여 node 애플리케이션을 실행합니다.

node node.basic.js

실행 화면

서버 생성하기

아래 코드를 basicServer.js로 저장합니다.

// basicServer.js
var http = require('http');
http.createServer(function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/html'});
    res.end('Hello World');
}).listen(1337, '127.0.0.1');
console.log('Server running at http://127.0.0.1:1337/');

터미널에서 애플리케이션을 실행합니다.

node basicServer.js

http://127.0.0.1:1337/로 접속하여 서버가 생성됨을 확인합니다.

생성된 서버 화면

아직은 맛보기 수준이므로 코드에 대한 내용은 이해하지 않아도 괜찮습니다.

그래도 궁금하다면 아래 주석을 참고하세요!

// basicServer.js

// node.js의 http모듈을 변수 http로 추출합니다.
var http = require('http');

// http모듈의 createServer 함수를 호출하여 서버를 생성합니다.
// req: request. 웹 요청 매개변수, res: response. 웹 응답 매개변수
http.createServer(function (req, res) {
    // writeHead: 응답 헤더를 작성합니다.
    // 200: 응답 성공, text/html: html문서
    res.writeHead(200, {'Content-Type': 'text/html'});
    // end: 응답 본문을 작성합니다.
    res.end('Hello World');
    // listen: 매개변수로 포트와 호스트를 지정합니다.
}).listen(1337, '127.0.0.1');
console.log('Server running at http://127.0.0.1:1337/');
웹 서버는 기본적으로 80포트를 사용합니다. 따라서 포트를 입력하지 않고 http://127.0.0.1/로 접속하게 되면 기본적으로 http://127.0.0.1:80/으로 인식합니다. 즉 listen에서 포트를 80으로 한다면 주소뒤에 포트번호를 입력하지 않아도 됩니다. 하지만 80포트를 사용하려면 다른 웹 서버와 충돌하지 않아야 하며, 관리자 권한(sudo)이 필요할 수도 있습니다.

댓글

댓글 본문
  1. 코딩꿈나뮤
    그저....빛..
  2. 1111
    대화보기
    • 최 봉재
      contentType만 지정한다면 json으로 바로 쏴줄 수 있겠네요!
    • 신수빈
      너무잘써주셔서 감사합니다! 잘보고갑니당!!ㅎㅎ
    • 나무마루
      정말 감사합니다. 쉽게 써주셨어요.
    버전 관리
    miki
    현재 버전
    선택 버전
    graphittie 자세히 보기