J'ai travaillé sur la mise en œuvre de certaines des mises à jour de Next 9. . Je suis passé de getInitialProps
à getServerSideProps
et j'ai remarqué que mes exportPathMap
étaient mécontents du fait que ces pages devenaient dynamiques. Tout fonctionne bien en cours d'exécution next
, mais quand je vais exécuter next build && next export
, Je rencontre quelques problèmes.
Dans la documentation pour exportation HTML statique il indique If your pages don't have getInitialProps you may not need next export at all; next build is already enough thanks to Automatic Static Optimization.
Je peux faire en sorte que cela fonctionne avec mes nouveaux appels getServerSideProps
lorsque j'exécute next build && next start
. Quelles étapes dois-je suivre pour que cela fonctionne également avec next export
afin que je puisse déployer via Netlify. Voici un exemple de l'erreur que j'obtiens lorsque j'essaye d'exécuter next export
Error occurred prerendering page "/videos/[videos_title]". Read more: https://err.sh/next.js/prerender-error:
Error: Error for page /videos/[videos_title]: pages with `getServerSideProps` can not be exported. See more info here: https://err.sh/next.js/gssp-export
Les applications créées avec SSR ne peuvent pas être déployées dans Netlify ou tout autre site d'hébergement statique (sauf Vercel, qui prend en charge le déploiement de NextJS SSR)
Lorsque vous optez pour SSR (en utilisant getServerSideProps), il est inutile d'utiliser la commande
next export
car il essaiera de créer un contenu statique qui est totalement opposé au SSR.
Vercel a une documentation médiocre pour le déploiement des applications SSR. Heureusement, j'ai obtenu les informations ci-dessous de l'équipe de support et je leur ai demandé de mettre à jour la documentation pour en savoir plus sur le déploiement SSR dans Vercel.
Lors du déploiement dans Vercel,
next build
ou npm run build
REMARQUE: l'application avec server.js personnalisé ne fonctionnera pas correctement dans Vercel, dans ce cas, optez pour Virtual Server (comme EC2)