Gatsby membuat situs Anda menjadi file biasa di public/: HTML untuk setiap halaman, ditambah JavaScript yang membuat navigasi cepat. Sejak Gatsby Cloud ditutup pada 2023, banyak situs Gatsby memerlukan rumah baru. Lobsite meng-host folder hasil build: jalankan gatsby build, lalu npx lobsite, dan situs aktif di alamat *.lobsite.app dengan HTTPS.
Cara kerjanya
- Build situs dengan
npx gatsby build(ataunpm run build). Gatsby menulisnya kepublic/. - Jalankan
npx lobsitedi proyek. Perintah ini menemukanpublic/dan melakukan deploy; di proyek Gatsby itu adalah keluaran build, sementara file statis Anda sendiri ada distatic/. Deploy pertama tidak memerlukan akun dan bertahan 6 jam. - Simpan dengan tautan klaim, di akun gratis. Setelah itu, dua perintah yang sama memperbarui alamat yang sama.
Pengaturan gatsby-config
// gatsby-config.js
module.exports = {
siteMetadata: { siteUrl: "https://my-site.lobsite.app" },
};
siteMetadata.siteUrladalah alamat lengkap Anda.gatsby-plugin-sitemap, tautan kanonis, dan feed membacanya.pathPrefixtidak diperlukan: situs disajikan dari tingkat atas alamatnya. Jika Anda menyetelnya untuk GitHub Pages, build tanpa--prefix-paths.gatsby cleanmembersihkan cache danpublic/. Jalankan jika deploy menampilkan halaman yang sudah dihapus.
Yang memerlukan fitur server Gatsby
Halaman statis, gatsby-plugin-image, dan data dari GraphQL semuanya berfungsi, karena diselesaikan selama gatsby build. Tiga fitur memerlukan server dan tidak berjalan di Lobsite: Gatsby Functions (src/api), render sisi server dengan getServerData, dan Deferred Static Generation. Ganti fungsi yang menangani formulir kontak dengan formulir yang mengirim ke /_lobsite/forms/contact; lihat formulir. Pengalihan yang dibuat dengan createRedirect memerlukan plugin host; di Lobsite, letakkan di lobsite.toml, dengan Generator Pengalihan.
File disimpan berdasarkan hash-nya. Deploy ulang situs yang tidak berubah mengunggah 0 byte.
Pratinjau sebelum tayang. Rollback dengan satu klik, termasuk pengalihan.
Setiap situs mendapat alamat *.lobsite.app dengan HTTPS sejak deploy pertama.
Arahkan formulir ke /_lobsite/forms/contact. Termasuk penyaringan spam.
Pengalihan, header, dan formulir ada di lobsite.toml dan ikut bersama setiap deploy.
Deploy tanpa akun aktif selama 6 jam. Tautan klaim menyimpannya, gratis.
Perbandingan host Gatsby
| Lobsite | Netlify | GitHub Pages | |
|---|---|---|---|
| Situs Gatsby statis | Ya | Ya | Ya |
| Functions, SSR, DSG | Tidak | Ya | Tidak |
| Build di server | Tidak: Anda deploy public/ |
Ya | Di GitHub Actions |
| Hanya file berubah yang diunggah | Ya | Ya | Melalui Git |
| Akun sebelum deploy pertama | Tidak: aktif 6 jam, lalu simpan gratis | Ya | Ya, dan repositori |
| Formulir tanpa backend | Ya, setelah situs ada di akun | Ya | Tidak |
| Domain kustom | Ya, gratis | Ya | Ya |
Netlify, yang mengambil alih Gatsby pada 2023, juga menjalankan fitur servernya. Untuk situs Gatsby yang statis, seperti kebanyakan, Lobsite melakukan deploy folder hasil build dengan satu perintah, dan nama file ber-hash dari Gatsby berarti build ulang hanya mengunggah file yang benar-benar berubah.
Pertanyaan umum
Di mana saya dapat meng-host situs Gatsby setelah Gatsby Cloud tutup?
Host statis apa pun dapat menyajikan situs Gatsby hasil build. Di Lobsite, jalankan gatsby build dan npx lobsite; deploy pertama tidak memerlukan akun.
Mengapa npx lobsite melakukan deploy public/ untuk Gatsby?
Karena Gatsby menulis situs hasil build ke public/. File Anda sendiri untuk disalin, seperti favicon.ico, ditempatkan di static/, dan Gatsby menyalinnya ke public/ selama build.
Apakah gatsby-plugin-image berfungsi di host statis?
Ya. Gambar diubah ukurannya selama gatsby build dan ditulis ke public/, sehingga sudah berupa file biasa saat Anda deploy.
Apakah halaman 404 Gatsby saya akan berfungsi?
Ya. src/pages/404.js dibuat menjadi 404.html, dan Lobsite menyajikannya dengan status 404 untuk alamat yang tidak ada.