문제 상황
- 로그인하지 않은 사용자가 특정 페이지에 접근하지 못하도록 Next.js 미들웨어를 설정하려 하였으나 리다이렉트가 제대로 동작하지 않음
원인 분석
- 조건문이 실행되는지 콘솔 로그를 통해 파악 → 로그 없음
- 미들웨어 전체가 제대로 실행되고 있는지 콘솔 로그를 통해 확인 → 로그 없음
이로써 미들웨어 자체가 실행되고 있지 않다는 결론에 도달했습니다.
해결 방안과 선택 이유
- Next.js는 프레임워크이기 때문에 지켜야 하는 규칙이 많습니다. 따라서 미들웨어를 세팅하는 부분에서 무언가 실수가 있었음을 파악하고 오타, 경로를 중점적으로 살펴보았습니다.
- 알고보니 미들웨어 파일의 위치가 잘못된 곳에 있음을 발견했습니다. 그리고 파일을 이동하니 잘 작동하는 것을 확인하였습니다!

공식 문서의 미들웨어 설명 부분
성과 및 교훈
- Next.js의 공식 문서를 찾아볼 생각을 하지 못 하고 미들웨어 코드 내부에서 문제를 찾으려 해서 생긴 문제였습니다. 그래서 문제가 생겼을 경우 공식 문서부터 찾아보는 습관을 기르도록 마음 먹었습니다!
Routing: Middleware