
Node.js – 서버 구축 – HTTP 모듈 – 0 – HTTP 서버 생성과 실행
소제목: Node.js와 HTTP 모듈을 사용하여 HTTP 서버 생성과 실행하기
Node.js는 자바스크립트를 서버 측에서 실행할 수 있게 해주는 런타임 환경입니다. HTTP 모듈은 Node.js에서 웹 서버를 만들고 관리하는 데 사용되는 기본 모듈 중 하나입니다. 이번에는 Node.js의 HTTP 모듈을 사용하여 간단한 HTTP 서버를 생성하고 실행하는 방법에 대해 알아보겠습니다.
1. HTTP 모듈을 사용하여 서버 생성하기
const http = require('http');
const server = http.createServer((request, response) => {
response.statusCode = 200;
response.setHeader('Content-Type', 'text/plain');
response.end('Hello, world!');
});
server.listen(3000, 'localhost', () => {
console.log('서버가 http://localhost:3000/ 에서 실행 중입니다.');
});
위의 코드는 Node.js에서 HTTP 모듈을 사용하여 서버를 생성하는 예시입니다. http.createServer()
메서드를 호출하여 서버 객체를 만들고, 서버가 클라이언트로부터 요청을 받을 때마다 실행되는 콜백 함수를 전달합니다. 콜백 함수에는 요청 객체(request
)와 응답 객체(response
)가 전달되며, 이를 통해 요청에 대한 처리와 응답을 할 수 있습니다.
2. 서버 실행하기
server.listen(3000, 'localhost', () => {
console.log('서버가 http://localhost:3000/ 에서 실행 중입니다.');
});
위의 코드는 서버를 실행하는 부분입니다. server.listen()
메서드를 호출하여 서버를 특정 포트(여기서는 3000)와 호스트(여기서는 ‘localhost’)에 바인딩합니다. 서버가 성공적으로 시작되면 콜백 함수가 호출되며, 화면에 실행 중인 서버의 주소가 출력됩니다.
비유적인 설명
Node.js의 HTTP 모듈은 마치 식당의 웨이터와 같습니다. 웨이터는 손님(클라이언트)으로부터 주문(요청)을 받아 주방(서버)에 전달하고, 주방에서 요리를 만들어 웨이터가 다시 손님에게 서빙(응답)합니다. 마찬가지로 HTTP 모듈은 클라이언트로부터 요청을 받아 서버에서 처리한 후 응답을 보내는 역할을 합니다.
주의해야 할 점
- 서버를 실행할 때 사용하는 포트 번호(여기서는 3000)는 다른 프로세스가 사용 중인 포트와 겹치지 않도록 선택해야 합니다.
- 서버를 실행한 후에는
Ctrl + C
를 눌러 서버를 중지시킬 수 있습니다. - 서버가 실행 중일 때는 해당 포트를 사용하는 다른 서버를 실행할 수 없습니다.
- 서버 코드에 변경을 가한 경우 서버를 중지하고 다시 실행해야 변경된 내용이 적용됩니다.
Node.js를 사용하여 HTTP 서버를 생성하고 실행하는 방법을 살펴보았습니다. 이를 통해 웹 애플리케이션을 개발하거나 API 서버를 구축하는 등 다양한 서버 개발에 활용할 수 있습니다. 자세한 내용은 공식 문서나 다양한 자습서를 참고하시면 도움이 될 것입니다. 즐겁고 창의적인 서버 개발을 기대합니다!