안녕하세요. 혀코입니다.
오늘은 Node.js에서 404 Page not found 페이지 설정하는 방법에 대해서 알아보겠습니다.
express.js와 handlebar.js의 express view engine인 hbs를 설치 후 페이지 템플릿 설정이 되어있는 상태에서 시작합니다.
이전 포스트를 참고 부탁 드립니다.
https://smilehugo.tistory.com/entry/nodejs-how-to-use-hbs-external-module
여기에서 404 page not found 페이지를 설정하는 방법은 페이지 설정 맨 마지막 부분, app.listen 함수 바로 윗 부분에 다음과 같이 설정합니다.
app.get('*', (req, res) => {
res.render('404', {
title: '404',
name: 'Hyukho',
errorMessage: 'Page not found'
})
})
404 page not found 페이지를 페이지 설정 맨 마지막 부분에 하는 이유는 맨 처음의 설정된 페이지부터 매치하는지 확인 후 다음 설정된 페이지로 진행되기 때문에 매치하는 페이지가 없다면 출력이 되어야 하기 때문입니다.
물론 이전 포스트에서 세팅했듯이 404페이지도 templates/views 폴더에 아래와 같이 404.hbs로 세팅되었습니다.
<!DOCTYPE html>
<html>
<head>
<title>{{title}}</title>
</head>
<body>
{{>header}}
{{errorMessage}}
{{>footer}}
</body>
</html>
그리고 다른 페이지의 예를 들어 About 하위 페이지의 404 page not found 페이지를 세팅하는 방법은 아래와 같이 해주면 됩니다.
app.get('/about/*', (req, res) => {
res.render('404', {
title: '404',
name: 'Hyukho',
errorMessage: 'No article found on Article page'
})
})
이렇게 Node.js에서 404 Page not found 페이지를 설정하는 방법에 대해서 알아봤습니다.
유용하셨다면, 공감과 구독 부탁 드립니다.
감사합니다. :)
댓글