[Node.js/express] static 파일 호스팅하기!

SamSim·2021년 8월 9일
0

Node.js 백엔드

목록 보기
1/1
post-thumbnail

웹 프로젝트를 진행하던 중, html과 css , javascript를 이용해서 웹 호스팅을 하고자 하였다!
node.js를 이용해서 서버를 구축 중인데, 수강중이던 강의에서는 templete을 이용해 html 문서 내용을 구성하였어서 이미 만들어 놓은 웹 문서를 어떻게 호스팅 하는지 찾아보고 공유해보려 한다!

Node.js의 프레임워크인 express를 이용하여 구축 중인데, express의 기본 제공 미들웨어인 express.static을 이용하면 가능했다!

app.use(express.static('디렉토리 이름'))
app.get('/', function(req, res) {
    res.sendFile(__dirname + "호스팅 하고자 하는 파일의 위치")
})

기본 path('/')에 대해서 get 요청이 들어왔을때 이를 처리하는 코드이다!
'/'위치로 웹 문서 요청이 들어왔을때, express app이 대상 디렉토리를 사용하여 static file을 전송할 수 있도록 하고, response로 해당 위치에 있는 특정 파일을 sendFile해주도록 해주었다!
하지만 밑의 res.sendFile(__dirname + "호스팅 하고자 하는 파일의 위치") 코드 같은 경우에는, 들어오는 요청이 app.use(express.static())으로 선언해준 위치의 파일 명과 일치하지 않기에,(예를 들어 '/'로 요청이 들어오면 main.html을 보내어 주어야할 때) 특정 파일을 send해주도록 한 것이고, 만약 request가 "127.0.0.1:3000/main.html"과 같이 app.use로 선언해둔 디렉토리 내의 특정 파일을 request했다면, res.sendFile을 해주지 않아도 호스팅이 된다!(직접 구축한 서버로 시험해본 결과)

다음 포스팅은 Node.js를 이용해서 SQL DB에 접근하고, 이를 이용해 서비스를 제공하는 방법에 대해서 올려보려한다!

Express 공식 사이트 미들웨어 설명 페이지

profile
개발새발

0개의 댓글