Next.js peut construire un site qui n’a pas besoin de serveur : réglez output: "export" et next build écrit chaque page en HTML dans out/. Lobsite héberge ce dossier. Lancez npm run build, puis npx lobsite, et le site est en ligne à une adresse *.lobsite.app en HTTPS. Pour être clair dès le départ : cette page concerne les exports statiques. Le rendu serveur, les routes d’API et le middleware nécessitent un hébergeur Node.js comme Vercel.
Comment ça marche
- Activez l’export statique dans
next.config.jsavecoutput: "export"(voir ci-dessous), puis lanceznpm run build. Le site arrive dansout/. - Lancez
npx lobsitedans le projet. Il déploieout/, paspublic/ni.next/. Le premier déploiement ne demande pas de compte et dure 6 heures. - Gardez-le grâce au lien de récupération, dans un compte gratuit. Ensuite, chaque
npm run build && npx lobsitemet à jour la même adresse.
next.config.js pour un export statique
/** @type {import('next').NextConfig} */
const nextConfig = {
output: "export",
images: { unoptimized: true },
};
module.exports = nextConfig;
output: "export"fait écrireout/parnext build. L’ancienne commandenext exporta disparu depuis Next.js 14 ; ce réglage l’a remplacée.images: { unoptimized: true }est nécessaire si vous utiliseznext/image: le loader par défaut redimensionne les images sur un serveur à chaque requête. Avec ce réglage, les images sont servies telles quelles ; redimensionnez-les avant le build, ou utilisez un loader personnalisé.trailingSlashpeut rester désactivé. Les pages sont écrites enabout.html, et Lobsite les sert à/about.
Ce qu’un export statique ne sait pas faire
La documentation de Next.js liste les fonctionnalités qui exigent un serveur. Celles qu’on rencontre le plus :
- Routes d’API et Route Handlers autres que les
GETstatiques. Envoyez plutôt les formulaires vers/_lobsite/forms/contact; voir formulaires. redirects,rewritesetheadersdans next.config. Déplacez redirections et en-têtes danslobsite.toml, où ils s’appliquent à chaque requête ; le Générateur de redirections écrit les règles.- Middleware, Server Actions, ISR, et
cookies()ouheaders()dans les pages. - Routes dynamiques sans
generateStaticParams: chaque page doit être connue au moment du build.
Si votre application en dépend, ce n’est pas un site statique, et un hébergeur qui exécute Next.js sur un serveur est le bon choix.
Les fichiers sont stockés selon leur hash. Redéployer un site inchangé envoie 0 octet.
Prévisualisez avant la mise en ligne. Revenez en arrière en un clic, redirections comprises.
Chaque site reçoit une adresse *.lobsite.app en HTTPS dès le premier déploiement.
Faites pointer un formulaire vers /_lobsite/forms/contact. Filtrage du spam inclus.
Redirections, en-têtes et formulaires vivent dans lobsite.toml et accompagnent chaque déploiement.
Chaque limite est publiée, et chaque erreur vous dit quoi faire ensuite.
Hébergeurs Next.js comparés
| Lobsite | Vercel | Netlify | GitHub Pages | |
|---|---|---|---|---|
Export statique (output: "export") |
Oui | Oui | Oui | Oui |
| Rendu serveur, routes d’API, middleware | Non | Oui | Oui | Non |
| Build sur le serveur | Non : vous déployez out/ |
Oui | Oui | Dans GitHub Actions |
| Compte avant le premier déploiement | Non : en ligne 6 heures, puis à garder gratuitement | Oui | Oui | Oui, et un dépôt |
| Formulaires sans backend | Oui, une fois le site dans un compte | Non | Oui | Non |
| Domaine personnalisé | Oui, gratuit | Oui | Oui | Oui |
Vercel crée Next.js et en exécute tout. Pour un site vitrine, un blog ou une documentation construits en export statique, Lobsite est l’hébergeur le plus simple : une commande, seuls les fichiers modifiés envoyés, une URL d’aperçu pour chaque déploiement.
Questions fréquentes
Puis-je héberger ici une application Next.js avec rendu côté serveur ?
Non. Lobsite sert des fichiers, donc seul un export statique fonctionne. Si des pages utilisent getServerSideProps, des Server Actions ou un rendu dynamique, hébergez-la là où Next.js tourne sur un serveur.
Pourquoi mes images next/image sont-elles cassées après l’export ?
Le loader d’images par défaut a besoin d’un serveur. Ajoutez images: { unoptimized: true } à next.config.js, ou réglez un loader personnalisé qui pointe vers un CDN d’images, puis rebuildez.
Ma page 404 Next.js fonctionne-t-elle ?
Oui. next build écrit 404.html à partir de votre page not-found (App Router) ou de pages/404 (Pages Router), et Lobsite la sert pour toute adresse inexistante.
Puis-je utiliser l’App Router avec un export statique ?
Oui. Les Server Components sont rendus au build ; les composants client s’exécutent dans le navigateur comme d’habitude. Seules les fonctionnalités qui exigent une requête à l’exécution sont exclues.