Gatsby bouwt je site tot gewone bestanden in public/: HTML voor elke pagina, plus het JavaScript dat de navigatie snel maakt. Sinds Gatsby Cloud in 2023 sloot, hebben veel Gatsby-sites een nieuw thuis nodig gehad. Lobsite host de gebouwde map: voer gatsby build uit, dan npx lobsite, en de site staat live op een *.lobsite.app-adres met HTTPS.
Zo werkt het
- Bouw de site met
npx gatsby build(ofnpm run build). Gatsby schrijft hem naarpublic/. - Voer
npx lobsiteuit in het project. Het vindtpublic/en deployt die; in een Gatsby-project is dat de build-uitvoer, terwijl je eigen statische bestanden instatic/staan. De eerste deploy heeft geen account nodig en duurt 6 uur. - Houd hem met de claimlink, in een gratis account. Daarna werken dezelfde twee opdrachten hetzelfde adres bij.
Instellingen in gatsby-config
// gatsby-config.js
module.exports = {
siteMetadata: { siteUrl: "https://my-site.lobsite.app" },
};
siteMetadata.siteUrlis je volledige adres.gatsby-plugin-sitemap, canonieke links en feeds lezen het.pathPrefixis niet nodig: de site wordt vanaf de basis van zijn adres geserveerd. Heb je het voor GitHub Pages ingesteld, bouw dan zonder--prefix-paths.gatsby cleanwist de cache enpublic/. Voer het uit als een deploy pagina's toont die je hebt verwijderd.
Wat de serverfuncties van Gatsby nodig heeft
Statische pagina's, gatsby-plugin-image en data uit GraphQL werken allemaal, omdat ze tijdens gatsby build worden opgehaald. Drie functies hebben een server nodig en draaien niet op Lobsite: Gatsby Functions (src/api), serverrendering met getServerData en Deferred Static Generation. Vervang een function die een contactformulier afhandelt door een formulier dat post naar /_lobsite/forms/contact; zie formulieren. Doorverwijzingen gemaakt met createRedirect hebben een hostplug-in nodig; zet ze op Lobsite in plaats daarvan in lobsite.toml, met de Doorverwijzingsgenerator.
Bestanden worden op hun hash opgeslagen. Een ongewijzigde site opnieuw deployen uploadt 0 bytes.
Bekijk een voorbeeld voordat het live gaat. Zet in één klik terug, inclusief doorverwijzingen.
Elke site krijgt vanaf de eerste deploy een *.lobsite.app-adres met HTTPS.
Laat een formulier wijzen naar /_lobsite/forms/contact. Spamfilter inbegrepen.
Doorverwijzingen, headers en formulieren staan in lobsite.toml en reizen mee met elke deploy.
Een deploy zonder account is 6 uur live. Met de claimlink houd je hem, gratis.
Gatsby-hosts vergeleken
| Lobsite | Netlify | GitHub Pages | |
|---|---|---|---|
| Statische Gatsby-sites | Ja | Ja | Ja |
| Functions, SSR, DSG | Nee | Ja | Nee |
| Bouwt op de server | Nee: je deployt public/ |
Ja | In GitHub Actions |
| Alleen gewijzigde bestanden uploaden | Ja | Ja | Via Git |
| Account vóór de eerste deploy | Nee: 6 uur live, daarna gratis houden | Ja | Ja, en een repository |
| Formulieren zonder backend | Ja, zodra de site in een account staat | Ja | Nee |
| Eigen domein | Ja, gratis | Ja | Ja |
Netlify, dat Gatsby in 2023 overnam, draait ook de serverfuncties ervan. Voor een statische Gatsby-site, zoals de meeste, deployt Lobsite de gebouwde map met één opdracht, en dankzij de gehashte bestandsnamen van Gatsby uploadt een nieuwe build alleen de bestanden die echt zijn veranderd.
Veelgestelde vragen
Waar kan ik een Gatsby-site hosten nu Gatsby Cloud weg is?
Elke statische host serveert een gebouwde Gatsby-site. Op Lobsite voer je gatsby build en npx lobsite uit; de eerste deploy heeft geen account nodig.
Waarom deployt npx lobsite public/ voor Gatsby?
Omdat Gatsby de gebouwde site naar public/ schrijft. Je eigen bestanden om te kopiëren, zoals favicon.ico, horen in static/, en Gatsby kopieert ze tijdens de build naar public/.
Werkt gatsby-plugin-image op een statische host?
Ja. Afbeeldingen worden tijdens gatsby build geschaald en naar public/ geschreven, dus tegen de tijd dat je deployt zijn het gewone bestanden.
Werkt mijn Gatsby-404-pagina?
Ja. src/pages/404.js bouwt 404.html, en Lobsite serveert die met status 404 voor elk adres dat niet bestaat.