Gatsby sitenizi public/ içinde düz dosyalara derler: her sayfa için HTML, artı gezinmeyi hızlandıran JavaScript. Gatsby Cloud 2023'te kapandığından beri birçok Gatsby sitesi yeni bir yuvaya ihtiyaç duydu. Lobsite derlenmiş klasörü barındırır: gatsby build, ardından npx lobsite çalıştırın; site HTTPS'li bir *.lobsite.app adresinde yayında olur.
Nasıl çalışır
- Siteyi
npx gatsby build(veyanpm run build) ile derleyin. Gatsby onupublic/içine yazar. - Projede
npx lobsiteçalıştırın.public/klasörünü bulur ve deploy eder; bir Gatsby projesinde bu derleme çıktısıdır, kendi statik dosyalarınız isestatic/içinde durur. İlk deploy hesap gerektirmez ve 6 saat sürer. - Siteyi sahiplenme bağlantısıyla ücretsiz bir hesapta koruyun. Sonrasında aynı iki komut aynı adresi günceller.
gatsby-config ayarları
// gatsby-config.js
module.exports = {
siteMetadata: { siteUrl: "https://my-site.lobsite.app" },
};
siteMetadata.siteUrltam adresinizdir.gatsby-plugin-sitemap, kanonik bağlantılar ve beslemeler onu okur.pathPrefixgerekmez: site, adresinin kökünden sunulur. GitHub Pages için ayarladıysanız--prefix-pathsolmadan derleyin.gatsby clean, önbelleği vepublic/klasörünü temizler. Bir deploy kaldırdığınız sayfaları gösteriyorsa çalıştırın.
Gatsby'nin sunucu özelliklerini gerektirenler
Statik sayfalar, gatsby-plugin-image ve GraphQL verileri, gatsby build sırasında çözüldükleri için çalışır. Üç özellik sunucu gerektirir ve Lobsite'ta çalışmaz: Gatsby Functions (src/api), getServerData ile sunucu tarafı oluşturma ve Deferred Static Generation. Bir iletişim formunu işleyen fonksiyonu, /_lobsite/forms/contact adresine gönderen bir formla değiştirin; bkz. formlar. createRedirect ile oluşturulan yönlendirmeler bir barındırma eklentisi gerektirir; Lobsite'ta bunun yerine Yönlendirme Oluşturucu ile lobsite.toml dosyasına koyun.
Dosyalar hash'lerine göre saklanır. Değişmemiş bir siteyi yeniden deploy etmek 0 bayt yükler.
Yayına almadan önce önizleyin. Yönlendirmeler dahil tek tıkla geri alın.
Her site ilk deploy'dan itibaren HTTPS'li bir *.lobsite.app adresi alır.
Bir formu /_lobsite/forms/contact adresine yönlendirin. Spam filtresi dahil.
Yönlendirmeler, başlıklar ve formlar lobsite.toml içinde durur ve her deploy ile birlikte gider.
Hesapsız bir deploy 6 saat yayında kalır. Sahiplenme bağlantısı onu ücretsiz olarak korur.
Gatsby barındırma hizmetleri karşılaştırması
| Lobsite | Netlify | GitHub Pages | |
|---|---|---|---|
| Statik Gatsby siteleri | Evet | Evet | Evet |
| Functions, SSR, DSG | Hayır | Evet | Hayır |
| Sunucuda derler | Hayır: public/ klasörünü deploy edersiniz |
Evet | GitHub Actions içinde |
| Yalnızca değişen dosyalar yüklenir | Evet | Evet | Git üzerinden |
| İlk deploy'dan önce hesap | Hayır: 6 saat yayında, sonra ücretsiz koruyun | Evet | Evet, ve bir depo |
| Backend'siz formlar | Evet, site bir hesaptayken | Evet | Hayır |
| Özel alan adı | Evet, ücretsiz | Evet | Evet |
Gatsby'yi 2023'te devralan Netlify, onun sunucu özelliklerini de çalıştırır. Çoğu gibi statik olan bir Gatsby sitesi için Lobsite derlenmiş klasörü tek komutla deploy eder; Gatsby'nin hash'li dosya adları sayesinde yeni bir derleme yalnızca gerçekten değişen dosyaları yükler.
Sık sorulan sorular
Gatsby Cloud kapandığına göre bir Gatsby sitesini nerede barındırabilirim?
Her statik barındırma, derlenmiş bir Gatsby sitesini sunar. Lobsite'ta gatsby build ve npx lobsite çalıştırın; ilk deploy hesap gerektirmez.
npx lobsite, Gatsby için neden public/ klasörünü deploy ediyor?
Çünkü Gatsby derlenmiş siteyi public/ içine yazar. favicon.ico gibi kopyalanacak kendi dosyalarınız static/ içine gider ve Gatsby onları derleme sırasında public/ içine kopyalar.
gatsby-plugin-image statik bir barındırmada çalışır mı?
Evet. Görseller gatsby build sırasında yeniden boyutlandırılır ve public/ içine yazılır; deploy ettiğinizde düz dosyalardır.
Gatsby 404 sayfam çalışacak mı?
Evet. src/pages/404.js, 404.html dosyasını üretir ve Lobsite onu var olmayan her adres için 404 durumuyla sunar.