Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 정보처리기사
- ansible install
- mysql docker
- 스트림셋
- 데이트
- MySQL
- c
- 푸시푸시
- 파이썬
- 도커 elk
- docker
- 스트림셋이란?
- C언어
- 도커
- elk stack
- 도커 mysql
- mysql on docker
- 백준
- python
- 앤서블 설치
- 알고리즘
- 클라우드
- 도커 시작하기
- nvidia docker
- c++
- 데이터베이스
- 자바
- streamsets 강의
- 코딩
- java
Archives
- Today
- Total
리그캣의 개발놀이터
노드js[Node.js] 웹 서버 구축하기 (window) 본문
오늘은 node.js 를 이용하여 간단한 웹 서버를 만들거에요.
웹 서버에 대해 간단히 알아보고 싶다하면 이 페이지를 보시면 돼요!!
노드에는 기본으로 http 모듈을 사용하여 웹 서버 기능을 담당하는 서버 객체를 만들 수 있어요.
다음을 따라해 볼까요?
출처: do it node.js 프로그래밍
test1.js
var http = require('http');
//웹 서버 객체를 만듭니다
var server = http.createServer();
//웹 서버를 시작하여 3000번 포트에서 대기합니다.
var port = 3000;
server.listen(port, function(){
console.log('웹 서버가 시작되었습니다. : %d', port);
});
웹 서버 객체를 만들고 웹서버를 시작하는 코드입니다.
실행하면 다음과 같은 화면이 출력됩니다.
웹 서버가 시작되었습니다. : 3000
웹 서버가 실행되고 대기하고 있는 것을 볼 수 있습니다.
test2.js
var http = require('http');
// 웹 서버 객체를 만듭니다.
var server = http.createServer();
//웹 서버를 시작하여 3000번 포트에서 대기하도록 설정합니다.
var port = 3000;
server.listen(port, function(){
console.log('웹 서버가 시작되었습니다. : %d', port);
});
//클라이언트 연결 이벤트 처리
server.on('connection', function(socket){
var addr = socket.address();
console.log('클라이언트가 접속했습니다. : %s, %d', addr.address, addr.port);
});
//클라이언트 요청 이벤트 처리
server.on('request', function(req, res){
console.log('클라이언트 요청이 들어왔습니다.');
console.dir(req);
});
//서버 종료 이벤트 처리
server.on('close', function(){
console.log('서버가 종료됩니다.');
});
이번에는 웹서버를 만들고 대기하면서 클라이언트 접속이 오면 해당 이벤트에 맞게 출력해주는 소스코드 입니다.
'F5'키를 눌러 실행시키면 'test1.js' 와 별반 차이점이 없습니다.
웹 서버가 시작되었습니다. : 3000
그러나 웹 브라우저 창에 "http://localhost:3000" 을 입력해 줍니다.
이때 localhost는 현재 나의 ip 주소이고 3000 은 3000번 port로 접속하겠다는 뜻입니다.
다음과 같은 화면을 볼 수 있습니다.
웹브라우저는 아직 설정한게 없어서 나타나지 않지만 서버측에서는 클라이언트가 들어왔는지 확인 할 수 있습니다.
test3.js
var http = require('http');
// 웹 서버 객체를 만듭니다.
var server = http.createServer();
//웹 서버를 시작하여 3000번 포트에서 대기하도록 설정합니다.
var port = 3000;
server.listen(port, function(){
console.log('웹 서버가 시작되었습니다. : %d', port);
});
//클라이언트 연결 이벤트 처리
server.on('connection', function(socket){
var addr = socket.address();
console.log('클라이언트가 접속했습니다. : %s, %d', addr.address, addr.port);
});
//클라이언트 요청 이벤트 처리
server.on('request', function(req, res){
console.log('클라이언트 요청이 들어왔습니다.');
res.writeHead(200,{"Content-Type": "text/html; charset=utf-8"});
res.write("<!DOCTYPE html>");
res.write("<html>");
res.write(" <head>");
res.write(" <title>응답페이지</title>");
res.write(" </head>");
res.write(" <body>");
res.write(" <h1>노드제이에스로부터의 응답 페이지</h1>");
res.write(" </body>");
res.write("</html>");
res.end();
});
//서버 종료 이벤트 처리
server.on('close', function(){
console.log('서버가 종료됩니다.');
});
이런식으로 request 이벤트를 처리하는 콜백함수를 수정하시면 웹브라우저는 다음 화면은 출력합니다.
이런식으로 외부에서도 해당 ip를 통하여 페이지를 확인할 수 있습니다. ~^^
'개발 공부 > Node.js(웹)' 카테고리의 다른 글
[mongodb] 몽고 mongodb db 저장 위치 (0) | 2018.09.15 |
---|---|
[MongoDB]database.collection is not a function ERROR (0) | 2018.09.15 |
노드js[Node.js] EventEmitter 사용하기 (이벤트) (0) | 2018.01.17 |
노드js[Node.js] url 객체 사용하기 (2) | 2018.01.17 |
노드js[Node.js] 콜백(callback) 함수 예제 (0) | 2018.01.15 |
Comments