Siteler
Gerçekten geri alınabilen statik barındırma
Bir klasör gönder. Bir URL al. Yeniden derlemeden geri al.
Siteler, derlemenin ürettiğini barındırır — bir Vite ya da Astro dist klasörü, bir Hugo public klasörü, düz HTML. Her yayın kendi adresiyle bütün olarak saklanır; bu yüzden geri dönmek, zaten var olan bir yayını canlıya almaktır.
- Yayınlama
- tek komut
- Geri alma
- bir işaretçi
- Saklanan
- canlı + 10 yayın
- Analitik
- çerez yok
$ subnomic sites deploy --prod 312 already stored, 14 to upload https://blog.subnomic.app
Nasıl çalışır
Üç komut; tekrar tekrar çalıştıracağın ise ikincisi.
Bir klasör bağla
Siteyi oluştur ve derleme çıktısının nereye yazıldığını söyle. Bağlantı subnomic.json dosyasına kaydedilir; böylece sonraki her yayın tek komuttur.
$ subnomic sites create blog --dir dist https://blog.subnomic.app
Yayınla
--prod olmadan tam olarak bu derleme için bir önizleme adresi alırsın. Onunla derleme canlıya çıkar. stdout’a yalnızca URL yazılır; bu yüzden doğrudan CI’da kullanılabilir.
$ subnomic sites deploy https://blog--0198c2f4a1b27d3e.subnomic.app $ subnomic sites deploy --prod https://blog.subnomic.app
Geri al
Canlıdakinden önceki derlemeyi canlıya al — ya da kimliğiyle herhangi bir derlemeyi. Hiçbir şey yeniden yüklenmez ya da yeniden derlenmez, çünkü her yayın hâlâ orada, bütün olarak durur.
$ subnomic sites rollback $ subnomic sites rollback --to 0198c1e9
Bir siteyle gelenler
Statik bir sitenin yüklemeden sonra ihtiyaç duyduğu her şey.
Yalnızca değişen yüklenir
Dosyaların hash’i senin makinende hesaplanır. Sitenin önceki bir yayınında zaten olan her şey sunucu tarafında kopyalanır; bu yüzden büyük bir sitenin ikinci yayını yalnızca bir avuç dosya yükler.
Her yayına bir önizleme adresi
Her derleme blog--<id> adresinde yanıt verir ve noindex ile sunulur. Tahmin edilemez ama gizli değil — siteyi korursan önizlemeleri de korunur.
Kendi alan adın
İki DNS kaydı — bir CNAME ve alan adının senin olduğunu kanıtlayan bir TXT. Sertifika senin için alınır ve yenilenir. Site başına en fazla on alan adı.
_redirects ve _headers
Netlify tarzı kurallar: 301’den 308’e kadar, splat’ler, 404 ve 410. Kurallar yayına aittir; bu yüzden geri alma, eski kuralları eski dosyalarla birlikte geri getirir.
Tek sayfalık uygulamalar ve kendi 404 sayfan
SPA modu bilinmeyen yollara index.html ile yanıt verir — yalnızca sayfa gezinmelerinde; bu yüzden eksik bir .js yine düz bir 404’tür. Özel bir “bulunamadı” sayfası 404 durumunu korur.
Parola ya da yalnızca üyeler
Paylaşılan bir parola ya da yalnızca çalışma alanındaki kişiler. Koruma bir gün yanlış yapılandırılırsa site herkese açılmak yerine ziyaretçileri reddeder.
Takip olmadan trafik
Yol, durum, yönlendiren site, tarayıcı ve cihaza göre saatlik sayımlar. IP adresi yok, çerez yok, sayfanda betik yok. 90 gün saklanır.
Dar kapsamlı bir anahtarla CI’dan yayınla
Yalnızca sites.read ve sites.deploy kapsamlarına sahip bir anahtar yayınlayabilir ve geri alabilir. Alan adı oluşturamaz, silemez ya da başka yere yönlendiremez. GitHub Actions iş akışı.
Ya da klasörü tarayıcıya bırak
Derlenmiş bir klasörü site sayfasına sürükle ya da tarayıcıda bir metin dosyasını düzenleyip sonucu yeni bir yayın olarak yayınla.
Kurallar ve varsayılanlar
Kurallar, uygulandıkları dosyalarla birlikte gelir.
Bir _redirects ya da _headers dosyasını index.html dosyanın yanına koy; yayın sırasında okunur. İlk eşleşme kazanır ve bir kural, aynı yoldaki bir dosyaya üstün gelir.
- HTML no-cache ile sunulur; paketleyicinin hash’lediği varlıklar bir yıl ve immutable alır. İkisini de yazman gerekmez.
- Her yanıt HSTS ve nosniff taşır ve bir site bunları kapatamaz.
- .env dosyaları, .git ve node_modules asla yüklenmez — yayını derleme çıktısı yerine proje klasörüne yöneltmek gizli bilgilerini yayınlamaz.
- index.html içermeyen bir klasör, hiçbir şey yüklenmeden reddedilir.
# from to status
/docs/* https://docs.acme.io/:splat 301
/old-pricing /pricing 308/assets/* Cache-Control: public, max-age=31536000, immutable /* X-Frame-Options: DENY
Sınırlar
Her planda neler var.
| Plan | Ücretsiz | Pro | Team | Enterprise |
|---|---|---|---|---|
| Siteler | 1 | 10 | 50 | 500 |
| Site trafiği / ay | 1 GB | 30 GB | 150 GB | 1,5 TB |
| Depolanan (Depolama ile ortak) | 512 MB | 20 GB | 100 GB | 1 TB |
| Servisler | 1 | 3 | 10 | 10 |
Bir sitenin dosyaları, çalışma alanının Depolama ile ortak kullandığı depolanan baytlara sayılır. Fiyat listesinin tamamı.
Sorular
Bir alan adını ona yönlendirmeden önce.
Sitemi derliyor mu?
Hayır. Sen yerelde ya da kendi CI’ında derlersin, Siteler de sonucu barındırır. Git entegrasyonu da yapılandırılacak bir derleme adımı da yoktur.
Sunucu kodu çalıştırabilir mi?
subnomic sites deploy, bir Nitro node-server derlemesini ya da bir Linux ikili dosyasını tanır ve onu kendi microVM’inde bir servis olarak çalıştırır. Kaç servis olabileceğini ve birinin ne kadar büyük olabileceğini plan belirler.
Peki kök alan adı (apex)?
DNS sağlayıcın destekliyorsa CNAME flattening, ALIAS ya da ANAME ile yönlendir — ya da www adresini sun ve kök alan adını alan adı kayıt firmanda yönlendir.
Önizleme adresleri gizli mi?
Tahmin edilemezler ve asla dizine eklenmezler, ama gizli değiller. Siteye parola ya da çalışma alanı koruması koy, önizlemeler de onun arkasında kalır.
Çalışma alanının geri kalanı
Aynı fatura, aynı kimlik bilgileri, aynı denetim kaydı.
Bir sonraki yayının tek komut uzağında.
Bir çalışma alanı oluştur, bir klasör bağla, yayınla. Ücretsiz plan bir site içerir; kart gerekmez.