Как я могу отключить страницу ошибок Netlify и вместо этого использовать пользовательскую страницу ошибок с помощью NextJS?

#next.js #netlify

Вопрос:

У нас есть приложение NextJS, размещенное на Netlify. Мы реализовали пользовательские страницы ошибок с помощью NextJS _error.js файл, но когда возникает ошибка 404 или 500, вместо отображения страницы ошибки NextJS мы получаем страницу ошибки Netlify.

Есть ли что-то в netlify.toml, что мы должны отключить, чтобы вместо этого получить нашу собственную страницу ошибок NextJS? Или есть другое решение

Страница Ошибки Netlify1

Ответ №1:

Чтобы использовать пользовательскую страницу с ошибкой 404, вам потребуется использовать пользовательскую страницу 404 pages/404.js вместо pages/_error.js , так как страница 404 будет создана статически. _error.js похоже, в основном из-за 500 или других ошибок сервера. Смотрите этот учебник для получения дополнительной информации или Next.js документы.

Чтобы использовать вашу новую статическую страницу 404 с Netlify, вы можете создать пользовательское перенаправление 404 с помощью Netlify, которое будет отображаться вместо страницы 404 по умолчанию.

Чтобы настроить перенаправление 404 с netlify.toml синтаксисом:

 [[redirects]]
  from = "/*"
  to = "/404"
  status = 404
 

Комментарии:

1. Таким образом, невозможно отобразить страницу с ошибкой для страницы с ошибкой 500, сгенерированной _error.js через netlify?

2. @pratnayake Извините, я, возможно, неправильно понял ваш вопрос. Вы тоже получаете страницу Netlify 404 с 500 ошибками в своем приложении? 404 страницы создаются статически, так как они более распространены, но при возникновении ошибки отображается 500 страниц с ошибками.

3. @person_v1.32 Он спрашивает, как вы позволяете Next обрабатывать как 404-е, так и 500-е, и не позволяете Netlify отвечать на них? У него есть пользовательский вход в свой следующий _error.js, и его не увольняют, потому что Netlify перехватывает это. (Я знаю это, потому что я его коллега)