Nuxtjs는 개발 모드에서 최대 호출 스택 크기를 초과하고 잘못된 URL을 입력하면 사용자 정의 오류 페이지 대신 프로덕션에서 서버 오류 500이 발생합니다.
P粉872101673
2023-09-01 14:33:51
<p>존재하지 않는 URL을 입력하면 맞춤 오류가 나올 때도 있고, 대부분 서버 오류(이미지)가 뜹니다</p>
<p>이것은 내 <code>error.vue</code> 페이지입니다: </p>
<pre class="brush:php;toolbar:false;"><템플릿>
<div class="error-page">
<div class="페이지를 찾을 수 없습니다." v-if="error.statusCode === 404">
<div 클래스="이미지">
<img src="/images/page-not-found.png" alt="페이지를 찾을 수 없음">
</div>
<h1 class="text-capitalizefont-weight-bold">
{{ $t('notFound.error404') }}
</h1>
<p class="info my-3 my-lg-4">
{{ $t('notFound.error404Info') }}
</p>
</div>
<h1 class="text-capitalizefont-weight-bold" v-else-if="error.statusCode === 500">
{{ $t('notFound.error500') }}
</h1>
<h1 class="text-capitalizefont-weight-bold"v-else>
{{ $t('notFound.error500') }}
</h1>
<NuxtLink class="home-back text-capitalize mb-lg-3" :to="localePath('/')">
{{ $t('notFound.home') }}
</NuxtLink>
</div>
</템플릿>
<스크립트>
기본값 내보내기 {
소품: ['오류']
}
</스크립트>
<style lang="scss"
//코드를 최소화하기 위해 제거됨
<p><strong>참고: 1- <code>trrrrr</code>는 존재하지 않는 URL을 보여주기 위해 URL에 작성한 임의의 문자열입니다.
2- 개발 모드에서 가끔 사용자 정의 404 오류가 발생하며 대부분의 경우 <code>반환된 최대 호출 스택 크기</code> 오류(그림)</strong></ p>
<p>내 PWA 구성: </p>
<pre class="brush:php;toolbar:false;">pwa: {
메타: {
제목: "예제",
작성자: "예제",
},
아이콘: { 목적: "모든"
매니페스트: {
디스플레이: "독립형",
이름: "예제",
언어: "en",
useWebmanifestExtension: true,
theme_color: "#01bac6",
},
},</pre>
<p>제 질문은 다음과 같습니다. 1-왜 맞춤 오류 페이지가 항상 작동하지 않나요? </p>
<p>2- 존재하지 않는 페이지에 있기 때문에 404여야 할 코드 오류가 500인 이유는 무엇입니까? </p>
드디어 문제의 원인을 찾았습니다. 요청이 이행되지 않았을 때 오류를 잡는 방법은 다음과 같습니다
문제 발생 방식:
으아악다음으로 변경:
으아악출처: https://github.com/nuxt/nuxt .js/issues/6294#issuecomment-526902792
이 문제가 왜 발생하는지 아직도 모르겠습니다