개발자
안녕하세요. nextjs에서 Link 사용 시 as 속성을 넣었는데 404에러가 발생합니다. 1번 코드로도 해보고, next.config.js에서 2번 코드처럼도 해봤는데 주소창에 url은 as 처럼 보여지고 실제로도 /login으로 이동하더라구요. 무엇이 문제일까요? ㅠ
답변 1
안녕하세요! 원하시는 동작이 /auth/login을 /login으로 유도하는 것인가요? 우선 next Link 컴포넌트의 as는 브라우저 url 주소창에 보일 값을 지정해주는 데코레이터입니다. - https://nextjs.org/docs/api-reference/next/link next.config.js에서 현재 넣어놓으신 redirect 설정은 /auth/login으로 들어오면 /login으로 redirect를 시키게 되어있어요. 그리고 이 redirect 설정은 서버사이드에서 동작하는 것으로 알고 있습니다. next/link는 클라이언트 사이드 페이지 이동을 위한 컴포넌트인 것으로 알고 있어요. 그래서 아마 next/link는 next.config.js에 설정해놓으신 redirects와 아무 연관이 없는 것으로 알고 있습니다. 참고해보시면 좋을법한 링크들 첨부할게요 :) - https://github.com/vercel/next.js/discussions/26426 - https://stackoverflow.com/questions/72542435/make-nextjs-link-respect-the-default-redirects-middleware - https://nextjs.org/docs/api-reference/next/link#with-nextjs-13-middleware
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!