Next.js: GetServerSideProps рдореЗрдВ рдЕрдкрд╡рд╛рдж рдкрд░ 502 рддреНрд░реБрдЯрд┐

рдХреЛ рдирд┐рд░реНрдорд┐рдд 7 рдЕрдЧре░ 2020  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: vercel/next.js

рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ

рдмрдЧ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реЗрдВ

рдЬрдм рдПрдХ рд╕рд░реНрд╡рд░ рд░рд╣рд┐рдд рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ getServerSideProps рдореЗрдВ рдПрдХ рдЕрдкрд╡рд╛рдж рдХреЛ рдлреЗрдВрдХ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ 502 (рдмреИрдб рдЧреЗрдЯрд╡реЗ) рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛрдб рдХреЗ рд╕рд╛рде рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рддреА рд╣реИ, рдЬреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХрд╕реНрдЯрдо рдпрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ 500 рдкреГрд╖реНрда рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдРрдк рдХреЛ рдХреИрд╕реЗ рдпрд╛ рдХрд╣рд╛рдВ рддреИрдирд╛рдд рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕реНрдЯреИрдХ рдЯреНрд░реЗрд╕ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдПрдХ рдЕрдЧрд▓рд╛ 9.5+ рдореБрджреНрджрд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдиреЗ 500 рд╕реНрдЯреЗрдЯрд╕ рдХреЛрдб рдФрд░ 9.4.x рдореЗрдВ рдПрдХ рд╣реА рдХреЛрдб рд╡рд╛рд▓рд╛ рдПрдХ рдЙрдЪрд┐рдд рддреНрд░реБрдЯрд┐ рдкреЗрдЬ рджрд┐рдпрд╛ рдерд╛ред

рдкреНрд░рдЬрдирди рдХрд░рдирд╛

рдпрд╣ рдХрд┐рд╕реА рднреА рдкреГрд╖реНрда рдХреЗ рд╕рд╛рде рд╣реЛрдЧрд╛ рдЬреЛ getServerSideProps рдореЗрдВ рдПрдХ рддреНрд░реБрдЯрд┐ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рддрд╛ рд╣реИред рдореИрдВрдиреЗ рдПрдХ "рд╕рдорд╕реНрдпрд╛" рдкреГрд╖реНрда рдХреЗ рд╕рд╛рде рдПрдХ рдирдореВрдирд╛ рд░реЗрдкреЛ рдмрдирд╛рдпрд╛ рд╣реИ:

https://github.com/spencewood/throw-app

рдЗрд╕рдореЗрдВ рдмрд╕ рд╢рд╛рдорд┐рд▓ рд╣реИ:

import React from "react";

export default function Problem() {
  return (
    <>
      <h1>Problem!</h1>
    </>
  );
}

export const getServerSideProps = () => {
  throw new Error("error");
};

рдпрд╣ рдкреГрд╖реНрда vercel рдореЗрдВ рддреИрдирд╛рдд рд╣реИ: https://throw-app.vercel.app/problem

рдФрд░ рдХрд░реНрд▓:

тЭп curl -I "https://throw-app.vercel.app/problem"
HTTP/2 502 
date: Fri, 07 Aug 2020 18:20:24 GMT
content-type: text/plain; charset=utf-8
x-nextjs-page: /problem
content-length: 68
server: Vercel
x-vercel-id: cle1::2cxmx-1596824424449-1d2c09ffce13
strict-transport-security: max-age=63072000; includeSubDomains; preload
cache-control: s-maxage=0

рдЕрдкреЗрдХреНрд╖рд┐рддреН рд╡реНрдпрд╡рд╣рд╛рд░

рдмрд╕ рдЙрдкрд░реЛрдХреНрдд рдРрдк рдХреЛ рдиреЗрдХреНрд╕реНрдЯ 9.4 рдкрд░ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рд╕реЗ рдЕрдЧрд▓рд╛ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ 500 рдкреЗрдЬ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рд░реЗрдВрдбрд░ рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдФрд░ 500 рд╕реНрдЯреЗрдЯрд╕ рдХреЛрдб рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ 500 тАЛтАЛрдХреЗрд╡рд▓ "рд╕рд░реНрд╡рд░ рддреНрд░реБрдЯрд┐" рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ 502 "рдЕрдорд╛рдиреНрдп / рдХреЛрдИ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ" рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИред

рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ

рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ https://throw-app.vercel.app/problem рдХреЗ рд╕реНрд░реЛрдд рдХреЗ рд╕рд╛рде рдпрд╣рд╛рдВ рджрд┐рдП рдЧрдП рд╣реИрдВ: https://github.com/spencewood/throw-app

рдЕрдЧрд▓рд╛ 9.4

Screen Shot 2020-08-07 at 1 25 55 PM

рдЕрдЧрд▓рд╛ 9.5

Screen Shot 2020-08-07 at 1 25 59 PM

рдЕрдиреНрдп рд╡рд┐рдЪрд╛рд░

рдЬрд╛рд╣рд┐рд░ рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕ рддрд░рд╣ рд╕реЗ рдПрдХ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рдлреЗрдВрдХрдиреЗ рд╡рд╛рд▓реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб рдЬрдирд░реЗрдЯрд┐рдВрдЧ рдбрд╛рдпрдиреЗрдорд┐рдХ рдбреЗрдЯрд╛ рдХреЛ рдРрдк рдкрд░ рдкрд╣реБрдВрдЪрд╛рдиреЗ рдХреЗ рджреМрд░рд╛рди рдлреЗрдВрдХреЗ рдЧрдП рдХрд┐рд╕реА рднреА рдЕрдкрд╡рд╛рдж рдХрд╛ рдХрд╛рд░рдг 502 рд╣реЛрдЧрд╛ред

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдпрд╣рд╛рдВ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ ! рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдкрд╡рд╛рдж рд▓реЙрдЧ рдирд╣реАрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред

рд╕рднреА 4 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдореИрдВ рдпрд╣рд╛рдБ рдмрд╕ рдХреБрдЫ рдФрд░ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдФрд░ рдпрд╣ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рдпрд╣ рдПрдХ рд╡рд░реНрд╕реЗрд▓ рдореБрджреНрджрд╛ рдирд╣реАрдВ рд╣реИ рдлрд┐рд░ рднреА рдореИрдВ рдКрдкрд░ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реВрдБред рдореИрдВрдиреЗ Netlify рдкрд░ рд╕рдорд╕реНрдпрд╛ рдкреГрд╖реНрда рдХреЗ рд▓рд┐рдП рд╕рдЯреАрдХ рд╕рдорд╛рди рдХреЛрдб рдХреЗ рд╕рд╛рде рдПрдХ рд╕реНрдЯрд╛рд░реНрдЯрд░ рдРрдк рддреИрдирд╛рдд рдХрд┐рдпрд╛ рд╣реИ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЙрдирдХреЗ рдкрд╛рд╕ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ 502 рдкреГрд╖реНрда рдирд╣реАрдВ рд╣реИрдВ): https://distracted-curie-3f8cdd.netlify.app/problem

тЭп curl -I "https://distracted-curie-3f8cdd.netlify.app/problem"
HTTP/2 502 
cache-control: no-cache
date: Fri, 07 Aug 2020 21:16:19 GMT
content-length: 386
content-type: text/plain; charset=utf-8
age: 0
server: Netlify
x-nf-request-id: 17709115-ace0-4300-a026-dc21d6cd5cad-2642676

рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдб рдпрд╣рд╛рдБ рд╣реИ: https://github.com/spencewood/sonnet-18

рд╡рд░реНрд╕реЗрд▓ рдкрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд░рд╣рд╛ рд╣реИ - рдкрд╣рд▓реЗ NextJs 404 / рдЕрдиреНрдп рдореБрджреНрджреЛрдВ рдХреЛ getServerSideProps рд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдХрд╕реНрдЯрдо рддреНрд░реБрдЯрд┐ рдкреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдЕрдм рд╣рдореЗрдВ рд╡рд░реНрд╕реЗрд▓ 502 рддреНрд░реБрдЯрд┐ рдкреЗрдЬ рдорд┐рд▓рддрд╛ рд╣реИред

рдпрд╣рд╛рдВ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ ! рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдкрд╡рд╛рдж рд▓реЙрдЧ рдирд╣реАрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред

рдореИрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ рдЗрд╕реЗ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ https://github.com/vercel/next.js/pull/12841 рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕рдХрд╛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрд╛рд░рдг рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╣реИ рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдХрд╕реНрдЯрдо рддреНрд░реБрдЯрд┐ рдкреГрд╖реНрдареЛрдВ рдХреЗ рд▓рд┐рдП Doc рдЕрднреА рднреА рдХрд╣рддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ 500 (https://nextjs.org/docs/advanced-features/custom-error-page#500-81 рдкреЗрдЬ)

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

pie6k picture pie6k  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

YarivGilad picture YarivGilad  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ghost picture ghost  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

lixiaoyan picture lixiaoyan  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

renatorib picture renatorib  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ