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. Hoon Ko
    20231015
  2. Hoon Ko
    20231015
  3. carpediem
    23.09.02 완료!
  4. Sansol Park
    9행의 수정 이유는 favicon.ico 요청에 대한 처리를 올바르게 하기 위함입니다.
    주어진 코드에서, 9행의 return response.writeHead(404);는 즉시 404 응답 코드를 반환합니다. 그러나 이렇게 작성하면 응답 헤더만 전송되고, 응답 본문을 전송하지 않습니다.
    이를 수정하기 위해, 원래 코드를 분리하여 응답 헤더와 응답 본문을 한 줄로 작성하지 않고 각각 작성합니다. 변경한 코드에서는, response.writeHead(404);로 404 응답 헤더를 전송하고, 바로 다음 줄에서 response.end();를 호출하여 응답 본문을 종료하고 전송합니다.
    따라서 웹 브라우저 상에서 favicon.ico 파일이 없어도 페이지에 올바르게 접근할 수 있습니다.
    대화보기
    • helloworldjs
      9행을 수정해야 하는 이유는 무엇인가요?
    • 어흥
      23.06.26
    • 나그네
      강좌 잘 보고있습니다....감사합니다..
      근데 자체 리눅스 서버의 브라우저에서는 화면이 나오는데...
      다른 컴퓨터에서는 웹서버를 찾지를 못하네요...
      뭘 잘못한걸까요?....도와주세요...
    • shady00
      Atom으로 안하고 Codeanywhere 에서 하고 있는데
      Codeanywhere에서는 파일추가(6개파일) 어떻게 하는건가요??
    • 백대진
      0223-01-18 완
    • recap하러 왔어요 ~
    • 2022.12.27
    • 감자
      22.11.30 완료
    • 드가자
      g하하
    • 당당
      2022.10.14
    • sosoCoding
      2022.09.20 료완
    • 뿔고래
      nodejs는 만능인 것 같다.
    • Sukjoon Lee
      2022.08.11
    • i_am_es
      2022-08-04
    • 아캔두잇
      20220804 완료
    • 돈버는기계왕
      localhost 3000이 사용중이라서 그럴 겁니다.

      다른 수업들으면서 3000을 사용한채로 키고 오신거 같은데요
      대화보기
      • 키다리아저씨
        220714 완
      • toonfac
        220704 오전 2시 34분 완료
      • LLLEE
        22.06.23 완료 맨날 리액트 실행시킬때 yarn start로 무지성으로 했는데 그 근본이 이거 였군요. 재밌네요. 좋은 강의 감사합니다.
      • 이성훈
        2022/06/22 벌써 흥미롭네요! c언어 구조체 배우다가 하니까 너무 재밌어요~
      • yjchun26
        2022/03/27 완료
      • 코지마 히데오 뺨 후릴 반바지
        마지막 부분이 이해가 잘 안간다. 일단은 계속 진행해보면서 이해해볼려고 한다.
      • chloekim66
        이강의랑 웹애플리케이션만들기랑 뭐가다른건가요 ???
      • Scia
        저는 9행 수정하라는거 안 해도 되던데...
        왜 수정해야하는 건지 아시는 분 있으신가요?
      • 화려하게간다
        호우 슬슬 ㅋㅋㅋㅋㅋㅋㅋ
      • 밍기
        2022-01-06 완료
      • 소설가
        2021-12-30 완료
        고맙습니다.
      • guma
        맥 터미널에서 폴더경로이동은 cd (change directory)

        cd desktop/상위폴더/하위폴더 해서 본인이 저장한 폴더로 이동 후
        node main.js 하면 사이트 표시됨
      • 김관호
        2021.11.23
      • 솔나무
        예에
      • 칸타타
        저걸 아통에서 해야하는지 비주얼스튜디오에서 해야하는지요?
      • 동넝이
        21.10.11 완료
      • mijien0179
        궁금한게 있어요, 파비콘을 호출할 때 404 not found 코드를 넣는데, 왜 그런건가요? 아직 따로 파비콘을 지정하지 않은 상태라서 그런건가요?
      • 야옹스
        20211009!
      • inventorh
        2021.10.3 좋은강의 감사합니다
      • 20 단붕
        21.09.30
      • pdpd
        210921 달리자
      • 전해성
        21.09.12 완료
      • 졸작완성하자
        21.09.05 완료
      • 코딩하는 배달이
        엄청납니다
      • 고영히
        210818 완료
      • Kangmin Kim
        21.08.14 완료
      • 승뇽뇽
        ㅇㄹ
      • 박사장
        2021 07 28 완료!
      • 눌아인
        설치시에 cd 경로 입력해서 폴더로 이동한 후에 시도해보셔요.
        저도 찾을 수 없다 덨는데 위의 방법으로 해결햇습니다.
        대화보기
        • labis98
          2021.07.20 완료
        버전 관리
        egoing
        현재 버전
        선택 버전
        graphittie 자세히 보기