생활코딩

Coding Everybody

코스 전체목록

닫기

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. carpediem
    23.09.02 완료!
  2. 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 완료
        • Duke
          2021.07.17
        • 안찬우
          node main.js 입력시 찾을 수 없다고 뜨는데 뭐가 문제 일까요? 9행도 변경은 했습니다
        버전 관리
        egoing
        현재 버전
        선택 버전
        graphittie 자세히 보기