Node.js 서버 구축 방법 소개

Node.js를 활용한 서버 구축 방법

최근 웹 개발 분야에서 Node.js의 인기가 높아지고 있습니다. Node.js는 비동기식 이벤트 기반의 JavaScript 런타임 환경으로, 특히 서버 사이드에서 강력한 성능을 발휘합니다. 본 글에서는 Node.js를 통해 간단한 서버를 구축하는 방법에 대해 알아보겠습니다.

서버와 클라이언트 이해하기

웹 애플리케이션에서 서버와 클라이언트는 서로 밀접하게 연결되어 있습니다. 클라이언트는 사용자 요청을 처리하는 프로그램이며, 서버는 이러한 요청에 대해 적절한 정보를 제공하는 역할을 수행합니다. Node.js는 이러한 서버 애플리케이션을 손쉽게 개발할 수 있도록 돕는 도구입니다.

Node.js 설치하기

서버 구축을 시작하기 전에 우선 Node.js를 설치해야 합니다. 공식 웹사이트에서 운영체제에 맞는 설치 파일을 다운로드하여 설치 과정을 완료합니다. 설치가 완료되면, 터미널에서 node -v 명령을 입력하여 설치된 버전을 확인할 수 있습니다.

간단한 Node.js 서버 만들기

Node.js를 사용하여 서버를 쉽게 생성할 수 있습니다. 아래의 과정을 통해 간단한 HTTP 서버를 설정해보겠습니다.

서버 코드 작성하기

서버 코드를 작성하기 위해 먼저 새로운 파일을 생성합니다. 파일 이름은 server.js로 할당합니다. 다음은 기본적인 HTTP 서버를 만드는 코드입니다.

const http = require('http');
const app = http.createServer((req, res) => {
 const url = req.url;
 if (url === '/') {
  res.writeHead(200, { 'Content-Type': 'text/html; charset=utf-8' });
  res.end('

안녕하세요, Node.js 서버입니다!

'); } else { res.writeHead(404, { 'Content-Type': 'text/html; charset=utf-8' }); res.end('

페이지를 찾을 수 없습니다.

'); } }); app.listen(3000, () => { console.log('서버가 http://localhost:3000 에서 실행 중입니다.'); });

위의 코드는 Node.js의 http 모듈을 사용하여 서버를 생성하는 간단한 예제입니다. 클라이언트가 접속했을 때, 루트 경로(/)에 대한 요청을 처리합니다. 요청이 해당 경로일 경우, ‘안녕하세요, Node.js 서버입니다!’라는 메시지를 응답합니다. 그 외의 요청에 대해서는 404 에러 페이지를 표시합니다.

서버 실행하기

서버 코드를 작성한 후, 터미널에서 다음 명령어를 입력하여 서버를 실행합니다.

node server.js

이제 웹 브라우저를 열고 http://localhost:3000으로 접속해보면 위에서 작성한 메시지를 확인할 수 있습니다. 만약 다른 경로로 접속한다면 ‘페이지를 찾을 수 없습니다.’라는 메시지가 나타납니다.

URL 라우팅 구현하기

특정 URL에 따라 다른 응답을 제공하고 싶다면 URL 라우팅을 구현할 수 있습니다. 요청된 URL을 기반으로 조건문을 사용하여 대응할 수 있습니다. 예를 들어, 사용자 요청에 따라 다른 페이지를 제공하는 방식입니다.

const http = require('http');
const app = http.createServer((req, res) => {
 const url = req.url;
 if (url === '/users') {
  res.writeHead(200, { 'Content-Type': 'application/json; charset=utf-8' });
  res.end(JSON.stringify([{ name: '홍길동' }, { name: '이순신' }]));
 } else if (url.startsWith('/users/')) {
  const userId = url.split('/')[2];
  res.writeHead(200, { 'Content-Type': 'text/plain; charset=utf-8' });
  res.end(사용자의 ID는 ${userId}입니다.);
 } else {
  res.writeHead(404, { 'Content-Type': 'text/html; charset=utf-8' });
  res.end('

404 Not Found

'); } }); app.listen(3000, () => { console.log('서버가 http://localhost:3000 에서 실행 중입니다.'); });

위의 예제에서는 /users 엔드포인트에 접속 시 사용자 목록을 JSON 형식으로 반환하고, /users/{id} 형식의 엔드포인트에 접속 시 해당 사용자의 ID를 반환합니다. 이러한 방식으로 다양한 경로에 대한 응답을 설정할 수 있습니다.

서버 종료 방법

서버를 종료하고 싶을 때는 터미널 창에서 Ctrl + C를 눌러 서버를 중단할 수 있습니다. 이때, 서버가 정상적으로 종료되었다는 메시지가 출력됩니다.

결론

본 포스팅에서는 Node.js를 사용하여 간단한 웹 서버를 구축하는 방법에 대해 알아보았습니다. Node.js의 비동기 처리 방식과 이벤트 루프를 통해 뛰어난 성능을 발휘하며, 경량화된 서버 애플리케이션을 쉽게 구현할 수 있습니다. 앞으로 더 나아가 Express.js와 같은 프레임워크를 활용하여 더욱 편리하고 복잡한 웹 애플리케이션을 구축하는 방법도 고민해볼 수 있습니다.

Node.js를 활용한 서버 개발은 학습과 실행이 간편하며, 다양한 비즈니스 로직을 구현할 수 있는 뛰어난 플랫폼이므로 많은 개발자들이 선호하고 있습니다. 앞으로도 Node.js를 활용한 다양한 프로젝트를 경험해보시는 것을 추천드립니다.

자주 물으시는 질문

Node.js를 설치하려면 어떻게 해야 하나요?

Node.js를 사용하려면 먼저 공식 웹사이트에서 운영체제에 점에 맞는 설치 프로그램을 다운로드한 뒤, 설치 절차를 완료하면 됩니다. 설치 후, 커맨드라인에서 node -v를 입력하여 올바르게 설치되었는지 확인할 수 있습니다.

Node.js 서버를 실행하려면 어떤 과정을 거쳐야 하나요?

서버 코드를 작성한 후, 터미널에서 node server.js 명령어를 입력하면 서버가 실행됩니다. 그 다음 웹 브라우저를 통해 http://localhost:3000에 접속하여 서버의 응답을 확인할 수 있습니다.

Leave a Comment