Next.js Redirect 문제 해결방법에 대한 영상을 찍었다.
처음 찍어봐서 긴장됐지만 영상을 만들며 더 자세히 해당 문제에 대해 이해하게 되었고 다음에는 마주쳐도 금방 해결할 수 있다!!
유튜브에서 보기
배포 후 리다이렉트를 했을 때, 모든 페이지에서 인덱스 페이지로 리다이렉트가 되는 문제가 있었습니다.서비스의 모든 페이지에서 새로고침을 누를경우, 해당 페이지로 다시 로드가 되어야 하는데, 자꾸 첫 메인 화면으로 로딩되는 문제가 있었습니다.
이는 저희 서비스에서 와인 취향 테스트를 이후 혹은 와인 검색 필터링 기능을 하고나서, 카카오 페이를 하고나서 등의 다양한 상황에서 해당 작업이 완료되면 리다이렉트를 시켜주는 로직들이 많았기에 해당 코드에 대한 수정이 필요하였습니다. 해당 문제는 로컬 개발 환경에서는 마주하지 못했던 문제라서 배포 후에야 문제를 인식하게 되었습니다.
Next js 의 빌드 방법이었습니다. next js는 초기 html 의 렌더링을 서버가 담당합니다. 브라우저에서 사용자가 원하는 페이지 요청을 보내면, 서버는 빌드 시점에 생성된 정적 파일들을 보내주고, 그 이후에 html이 동적으로 작동하기 위한 js파일을 다운로드 받습니다.
결과적으로 빌드시점에 생성된 .html 파일들이 그대로 배포되어 제공되기 때문에, 일반적인 npm run build & export 방식으로 빌드만 하게 되면 아까 보신 문제 상황과 같은 오류가 발생하게 됩니다.
저는 이 리다이렉트 문제를 배포할 때 마주치게 되어 문제해결에 정말 많은 시간이 소요되었습니다. 이번 글을 통해 next js의 빌드과정에서 같은 에러를 마주하게 되는 분들께 조금이나마 도움이 되었길 바랍니다.