Back-End/node.js
Express 모듈에서 static file의 서비스
blackjack_96
2022. 3. 1. 21:15
# 본 게시물은 egoing님의 생활코딩 강의를 정리한 것입니다.
Node.js로 express모듈을 사용하여 정적인 파일을 서비스
* 여기서 정적인 파일이란 : CSS,Javascript,이미지 등의 파일을 말합니다.
app.use(express.static('public'));
이렇게 하면
"CSS, javascript, 이미지 파일과 같은 static file을 불러올 때
main.js디렉토리 내에 존재하는 public이라는 디렉토리에서만 찾아라"라고
node.js 애플리케이션에게 말해주는 것이다.
저장 후에 웹 애플리케이션을 실행하고
127.0.0.1:3000/images/a.jpg라고 하면
127.0.0.1:3000라는 웹 서버에게 images/a.jpg라는 이미지 파일을 요청하는 것이다.
그러면 이 애플리케이션은
위 이미지를 찾을 때
public/images/a.jpg를 검색하여 찾아낸다.
또한, 위에서 지정해준 대로
public 디렉토리 이외의 디렉토리의 static file에는
url로 접근할 수 없기 때문에 보안상 안전하다.
<!doctype html>
<html>
<head>
<title>WEB1 - ${title}</title>
<meta charset="utf-8">
</head>
<body>
<h1><a href="/">WEB</a></h1>
${list}
${control}
${body}
<img src="/images/a.jpg" style="width:200;">
</body>
</html>
12행에서도 마찬가지로,
앱 애플리케이션은 /images/a.jpg라는 파일을
public디렉토리에서 찾으므로
최종적으로는
public/images/a.jpg라는 파일을 검색하여 로드하게 된다.