작성자 없음
작성자 정보가 삭제된 글입니다.
작성
·
111
0
강의 처럼 revalidatePath(`book/${bookId}`)를 해서 리뷰를 작성하고 작성하기 버튼을 눌러서 페이지를 재검증하는 상황
revalidatePath는 퍼지를 통해서 캐시가 모두 삭제되는 것이 이해함
빌드 후, 프로젝트 모드로 실행
리뷰를 작성하고 리뷰를 누르는 상황
작성한게 보이긴 하지만 두번째꺼가 ㅋㅋㅇㄹㅋ 였는데 아래와 같이 바뀝니다.
또한 새로고침을 누르면 다시 원상태로 돌아갑니다.
아래와 같이 새로고침을 누르면 퍼지 후에 book/1 페이지는 다이나믹으로 작동해야되는데 하지 않는 것으로 파악됩니다. prisma studio를 확인해보면 데이터는 들어갔습니다.
그런데 npm run dev로 하면 잘 됩니다...
왜 그런 걸까요??
답변 4
0
안녕하세요 질문자님 이정환입니다.
먼저 작성자 정보를 삭제하셨는데 혹시 문제가 해결되셨기 때문일까요? 그렇다면 "해결" 버튼을 클릭해주시면 감사하겠습니다.
문제 상황이 정확히 "프로덕션으로 실행했을 때, 리뷰 추가 후 새로고침을 누르면 빌드 상태의 데이터가 나타난다" 라는 것인가요? 그렇다면 클라이언트 캐시의 문제로 의심되는데 ... 혹시 .next 폴더를 제거하고 다시 시도해보시겠어요? 간혹 개발모드에서 프로덕션 모드를 왔다 갔다 할 때에 .next 폴더가 꼬여 이런 경우가 발생할 수 있습니다. 그 외에도 추가로 book/[id] 페이지는 generateStaticParams 함수를 사용하므로 Dynamic 페이지로 설정되지 않는다는 점도 참고 부탁드립니다.
정확한 원인 파악을 원하신다면 전체 프로젝트 코드를 담은 깃허브 or 구글 드라이브 링크를 답글로 부탁드립니다! 감사합니다.
0
0
확인해보니까 빌드를 하고 시작을 하면 잘 작동을 합니다.
그런데 만일 리뷰를 작성하고 추가하면 현재, supabase에 있는 데이터를 모드 잘 가져옵니다.
그런데 새로고침을 하면 다시 처음 빌드한 상태로 돌아갑니다.
0
안녕하세요, 인프런 AI 인턴입니다. Full Stack 개발자님.
revalidatePath
의 동작과 관련된 문제를 해결하기 위해 몇 가지 사항을 확인해 보겠습니다. 이 문제는 개발 모드(npm run dev
)에서는 정상적으로 동작하지만, 프로덕션 빌드 후에는 정상적으로 작동하지 않는 것으로 보입니다. 제공해주신 자료를 기반으로 분석하면, 다음과 같은 몇 가지 가능성이 있습니다:
캐싱 및 Revalidation 문제:
revalidatePath
함수를 사용할 때, 해당 경로의 재검증이 제대로 이루어지지 않으면 데이터가 즉시 업데이트되지 않을 수 있습니다.next.config.js
파일에서 캐싱 전략과 관련된 설정을 확인해 보세요.환경 설정 확인:
.env
파일을 사용하고 있을 수 있습니다. 두 환경의 API 엔드포인트 구성이나 데이터베이스 연결 설정이 다를 수 있으므로 이를 점검해 보세요.빌드 및 배포 설정:
npm run build
명령어가 제대로 작동하고 있는지 확인하세요. 빌드 시 오류가 발생하지 않았는지 로그를 확인하는 것도 좋습니다.동적 컨텐츠 재검증 문제:
Cache-Control
헤더를 확인해 보세요. 필요하다면 설정을 통해 더욱 빈번한 검증을 유도할 수 있습니다.prisma studio
와 데이터베이스 상태:
아래는 관련된 유사 질문과 참고할 수 있는 게시물 링크입니다:
- Next.js와 API 캐싱 문제 해결하기
- Next.js에서 동적 데이터 재검증 및 캐싱 설정 가이드
위 방법들을 확인하신 후에도 문제가 지속된다면, 환경 설정이나 빌드/배포 과정의 세부 사항을 다시 한 번 검토해 보시기 바랍니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
빌드도 제대로 작동하고 환경설정도 문제 없는데 왜그런걸까요..