Node.js

Node.js - 웹서버 만들기

수업소개

Node.js는 웹서버 기능을 가지고 있습니다. 이런 특성을 이용해서 컨텐츠를 프로그래밍적으로 생산할 수 있게 됩니다. 여기서는 Node.js를 웹서버로 구동하는 방법을 살펴보겠습니다. 

 

 

 

강의

 

 

 

소스코드

아래의 코드 중 9행의 내용은 아래와 같이 변경해야 합니다. 

response.writeHead(404);
response.end();
return;


 

var http = require('http');
var fs = require('fs');
var app = http.createServer(function(request,response){
    var url = request.url;
    if(request.url == '/'){
      url = '/index.html';
    }
    if(request.url == '/favicon.ico'){
      return response.writeHead(404);
    }
    response.writeHead(200);
    response.end(fs.readFileSync(__dirname + url));

});
app.listen(3000);

 

 

 

참고

web1 - HTML & Internet 수업의 소스코드

 

댓글

댓글 본문
작성자
비밀번호
  1. choigun08
    console.log은 클라이언트 쪽 아닌가요?
    node.js는 서버쪽인걸로 알고있어요
    대화보기
    • 20.03.08 완료
    • eddylee123456
      복습
    • eddylee123456
      완료
    • Gritter
      감사합니다!
    • 완료맨
      완료하였습니다. 감사합니다.
    • Coder가 되고싶다
      'nodejs는 웹서버도 될수있고, 브라우저 밖에서의 컴퓨터언어도 될수 있기때문에, apache와 달리, 웹브라우저의 사용자에게 자신이 원하는 대로 응답을 할 수 있다' 이렇게 이해했는데, 맞나요?
    • esteban0829
      앞에 node 라고 붙여야 되요
      (현재 디렉토리)> node (파일이름).js
      대화보기
      • 떠유니
        왜 console.log (~) 가 출력이 안될까요 ㅠ_ㅠ
      • 스티븐잡숴
        완료
      • 좋은 강의 감사합니다
      • 감사
        전에 web1 에서도 궁금했던건데 왜 그냥 localhost만 해도 index가 가장 처음 화면에 뜨는거죠
        1,2,3.html은 특별히 지정을 해줘야 뜨는데... index는 왜 디폴트죠?
      • JongHan Park
        완료
      • cd 파일경로 치신다음 하셔야 합니당!
        대화보기
        • 도전
          node main.js를 입력하면 SyntaxError: Unexpected identifier 가 뜨는 이유가 무엇일까요?
        • 샬롬
          완료
        • 임은정
          와안 료오
        • 잘 들었습니다 감사합니다!
        • 딥허브
          localhost:3000 해서 화면 안뜰때
          저는 리액트 설치하다가 yarn 으로 했는데 안떠서 구글링하고 하다가 여기까지 봤네요
          어찌어찌 해결해서 혹시나 같은방법으로 해결될수도 있는 분들 계실까봐 댓글달아둡니다.
          cmd 에서 프로젝트 폴더에서 set port=5000 명령어로 포트 바꿔주고
          다시 yarn start 하니까 해결됐습니다.
        • JT_brand
          감사합니다
        • ELECTRON까지
          저는 왜 console.log가 두번씩 찍힐까요...?
        • 아이랑디어
          와우.. 대박입니다 ㅠㅠ 제가 원하던 기능인데 node.js로 할 수 있겠네요
        • 학생
          너무 고맙습니다. 선생님.
        • 파이어뱃
          2019_12_05 complete
        • 남기봉
          인터넷익스플로러에서는 안되는데 , 크롬에서는 되네요.. ㅜㅜ
        • 박창신
          수강완료
        • 강다리
          달려요
        • 굼벵이
          완료
        • 조현철
          완료
        • 쑤우
          수강완료. 감사합니다~
        • CronEB
          파워풀 하네요
        • 아주코린
          완료
        • YesterdayKite
          완료. 감사합니다.
        • box3101
          php include 구문도 읽게하고싶은데 어떻게하면 좋을까요?
        • 완료
        • 주워니
          완료!
        • 정환
          20190621
        • egoing
          syntax highlight 라는 기능인데, 블로그에서 지원해줘야 사용할 수 있습니다.
          대화보기
          • 귤민파파
            저 이건 코딩하고 상관없는 질문인데요...
            포스팅된 글에 보면 (다른 해외 블로그도 있고..) 저 줄번호 있는 에디터는 일반 네이버 블로그 같은것에는 사용할수 없는건가요?
          • 작동이 안되서 댓글보고 수정했는데 됩니다 감사합니다
          • 성민
            감사합니다.
            잘 들었습니다.
          • 허공
            190510 감사합니다.
          • LEMILE
            저기서 coding.jpg파일 어떻게 보이게 하는지 아시는 분 있나요?
            coding.jpg파일을 data폴더에 옮겨 넣어도 안보이네요.
          • 이루
            완료!
          • 위준우
            완료
          • 아! 찾았습니다! 제가 잘못하고 있었네요ㅠㅠ 처음에 바탕화면-nodejs라는 폴더에 만들어놓고 web2-nodejs폴더 다시만들어서 거기에 있는 main.js파일을 실행하고 있던 거였습니다. 저처럼 안되시는 분들은 HTML소스코드 복사해온 그 폴더 안에있는 main.js 파일을 실행하신건지 한번 더 확인해보세요!
          • localhost:3000은 잘 들어가지는데 cmd에서 코드 갱신이 안되네요! 어떻게 해결해야 할까요 ㅠㅠ
          • 통신 MDP 좋아 ^_^
            완료 ^____________________^
          • 자유로움
            완료
          • localhost:3000시 오류 발생했는데 index.html만드니 정상동작했어요
          버전 관리
          egoing
          현재 버전
          선택 버전
          graphittie 자세히 보기