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. 솔나무
    예에
  2. 칸타타
    저걸 아통에서 해야하는지 비주얼스튜디오에서 해야하는지요?
  3. 동넝이
    21.10.11 완료
  4. mijien0179
    궁금한게 있어요, 파비콘을 호출할 때 404 not found 코드를 넣는데, 왜 그런건가요? 아직 따로 파비콘을 지정하지 않은 상태라서 그런건가요?
  5. 야옹스
    20211009!
  6. inventorh
    2021.10.3 좋은강의 감사합니다
  7. 20 단붕
    21.09.30
  8. 210921 달리자
  9. 전해성
    21.09.12 완료
  10. 졸작완성하자
    21.09.05 완료
  11. 코딩하는 배달이
    엄청납니다
  12. 고영히
    210818 완료
  13. Kangmin Kim
    21.08.14 완료
  14. 승뇽뇽
    ㅇㄹ
  15. 박사장
    2021 07 28 완료!
  16. 눌아인
    설치시에 cd 경로 입력해서 폴더로 이동한 후에 시도해보셔요.
    저도 찾을 수 없다 덨는데 위의 방법으로 해결햇습니다.
    대화보기
    • labis98
      2021.07.20 완료
    • 2021.07.17
    • 안찬우
      node main.js 입력시 찾을 수 없다고 뜨는데 뭐가 문제 일까요? 9행도 변경은 했습니다
    • 잘 모르겠는데... 그러려니 하고 듣고 있어요.
    • 정용헌
      20210710
    • 몰라요몰라
      C:\Users\sksms\Desktop\web2-nodejs>node main.js
      internal/fs/utils.js:314
      throw err;
      ^

      Error: ENOENT: no such file or directory, open 'C:\Users\sksms\Desktop\web2-nodejs/%EB%85%B8%EB%AC%B4%ED%98%84.jpg'
      [90m at Object.openSync (fs.js:498:3)[39m
      [90m at Object.readFileSync (fs.js:394:35)[39m
      at Server.<anonymous> (C:\Users\sksms\Desktop\web2-nodejs\main.js:14:21)
      [90m at Server.emit (events.js:375:28)[39m
      [90m at parserOnIncoming (_http_server.js:897:12)[39m
      [90m at HTTPParser.parserOnHeadersComplete (_http_common.js:126:17)[39m {
      errno: [33m-4058[39m,
      syscall: [32m'open'[39m,
      code: [32m'ENOENT'[39m,
      path: [32m'C:\\Users\\sksms\\Desktop\\web2-nodejs/%EB%85%B8%EB%AC%B4%ED%98%84.jpg'[39m

      이렇게 에러 뜨는데 해결방법 아시는 분 계신가요...
    • 쇼크리더
      감사합니다
    • warmpeace
      완료!
    • 永瀬
      127.0.0.1:3000

      또는

      localhost:3000

      main.js의 app.listen(3000); 부분이 포트를 지정해주는 부분.
      필요한 경우 3000을 다른 숫자로 바꾸면 해당 포트로 접속 가능함.
    • 최선호
      localhost:3000을 chrome에 입력 하고 따라가야함 index.html 만 chrome으로 실행하면 안됨
      node로 listen 3000 이 localhost 의 포트 번호 인것 같음
    • 초딩 개발자
      2021/05/08
    • 별거
      2021,05.03 오..!!! 웹서버라니.. 포트주소까지!! 너무 궁금했는데..
    • Jeong Il Haan
      20210412
    • 서쥐서쥐
      210331 완료
    • 정윤아
      잘 모르겠어요 ㅠ 너무 어렵네요
    • kujern
      app.listen(3000); 으로 되어있기 때문에 반드시 localhost:3000 으로 크롬 주소창에 입력해야
      화면이 제대로 출력된다. 이 강의보고 따라하는 사람들은 삽질하지 말기 바란다.
    • kujern
      윈도우 cmd 창으로 하다가 왜 갑자기 mac 에디터로 강의하나요? 따라하기 힘듭니다.
      인내심 테스트 하는 것 같아요.
    • 허태민
      21.03.05
    • byoonn
      완료
    • 밀키
      21.02.20 수강 완료
    • chimhyangmoo
      21.02.17
    • jeisyoon
      2021.02.05 Node.js - 웹서버 만들기 완료
    • testrestbestwest
      완료
    • 임찬혁
      완료
    • 뭄수
      완료
    • ohhigo
      21/1/22 ★★★★★
    • web2-nodejs는 현재 사용자가 위치한 폴더를 의미합니다. 따라서 현재 위치가 web2-nodejs이기때문에 그곳에서 node main.js를 입력함으로써 main.js를 실행시킵니다.
      대화보기
      • 코딩유망주
        이거 cmd에서 web2-nodejs 실행이 안되는데 저만 안되는건가요?
      • 2020.12.29 완료!
      • 풀스택개발자
        2020.12.28
      • 생활둘기
        2020 12 24
      • 생활둘기
        2020 12 23
      • kkn1125
        20.12.20 완료~!
      • aivyss
        자바로 프로그래밍을 시작해서 Spring으로 배우기 시작했지만 다른 언어를 이어서 한다는 점에서 불편하다 생각하여 시작!
      버전 관리
      egoing
      현재 버전
      선택 버전
      graphittie 자세히 보기