lobsite! Masuk Daftar

Hosting Astro

Host situs Astro statis: jalankan astro build, lalu npx lobsite melakukan deploy dist/, hanya file berubah yang diunggah. Termasuk HTTPS dan formulir.

Build situs, lalu deploy dist/. public/ dibiarkan: Astro menyalinnya ke dist/ untuk Anda.
Letakkan file HTML, folder, atau .zip Diperiksa di browser Anda; tidak ada yang diunggah sampai Anda memublikasikan.

Astro membuat situs statis secara bawaan: setiap halaman menjadi file HTML di dist/, dengan hanya JavaScript yang diperlukan island Anda. Hanya folder itu yang diperlukan Lobsite. Jalankan npm run build, lalu npx lobsite di proyek, dan situs aktif di alamat *.lobsite.app dengan HTTPS. Anda juga dapat meletakkan dist/ di kotak di atas.

Cara kerjanya

  1. Build situs dengan npm run build (yaitu astro build). Halaman, gambar, dan skrip masuk ke dist/.
  2. Jalankan npx lobsite di proyek. Perintah ini melakukan deploy dist/, bukan public/, yang sudah disalin Astro ke build. Deploy pertama tidak memerlukan akun dan bertahan 6 jam.
  3. Simpan dengan tautan klaim, di akun gratis. Folder disimpan di lobsite.toml, sehingga build berikutnya di-deploy dengan npx lobsite yang sama.

Pengaturan yang perlu diperiksa di astro.config.mjs

import { defineConfig } from "astro/config";

export default defineConfig({
  site: "https://my-site.lobsite.app",
  trailingSlash: "ignore",
});
  • site adalah alamat lengkap Anda. Astro memakainya untuk URL kanonis, Astro.site, dan sitemap dari @astrojs/sitemap. Setel ke alamat *.lobsite.app Anda, dan ubah saat pindah ke domain sendiri.
  • base tetap tidak disetel: situs disajikan dari tingkat atas alamatnya, bukan subfolder seperti situs proyek GitHub Pages.
  • build.format dapat tetap pada bawaannya. about/index.html terbuka di /about/, dan file about.html terbuka di /about.

Yang berfungsi, dan yang memerlukan server

Semua yang dirender Astro saat build berfungsi: koleksi konten, Markdown dan MDX, gambar astro:assets (dioptimalkan saat build), serta island dari React, Vue, Svelte, atau Solid, yang berjalan di browser. Apa pun yang berjalan per permintaan tidak berfungsi: halaman dengan export const prerender = false, output: "server", Astro Actions, dan endpoint API yang tidak di-prerender. Semua itu memerlukan adapter server, dan Lobsite hanya menyajikan file. Untuk formulir kontak, arahkan ke /_lobsite/forms/contact, bukan Astro Action; lihat formulir.

Hanya file yang berubah yang diunggah

File disimpan berdasarkan hash-nya. Deploy ulang situs yang tidak berubah mengunggah 0 byte.

Setiap deploy mendapat URL

Pratinjau sebelum tayang. Rollback dengan satu klik, termasuk pengalihan.

HTTPS di mana-mana

Setiap situs mendapat alamat *.lobsite.app dengan HTTPS sejak deploy pertama.

Formulir yang langsung berfungsi

Arahkan formulir ke /_lobsite/forms/contact. Termasuk penyaringan spam.

Konfigurasi dalam satu file

Pengalihan, header, dan formulir ada di lobsite.toml dan ikut bersama setiap deploy.

Coba tanpa akun

Deploy tanpa akun aktif selama 6 jam. Tautan klaim menyimpannya, gratis.

Perbandingan host Astro

Lobsite Netlify Vercel GitHub Pages
Situs Astro statis Ya Ya Ya Ya, dengan GitHub Action Astro
Render server (adapter) Tidak Ya Ya Tidak
Build di server Tidak: Anda deploy dist/ Ya Ya Di GitHub Actions
Akun sebelum deploy pertama Tidak: aktif 6 jam, lalu simpan gratis Ya Ya Ya, dan repositori
Formulir tanpa backend Ya, setelah situs ada di akun Ya Tidak Tidak
Domain kustom Ya, gratis Ya Ya Ya

Jika sebagian situs Anda dirender saat diminta, pilih host dengan adapter Astro. Jika situsnya statis, yang merupakan bawaan Astro, Lobsite melakukan deploy dalam hitungan detik dari komputer, CI, atau agen AI Anda, dan hanya file yang diubah build yang diunggah.

Pertanyaan umum

Apakah saya perlu adapter untuk meng-host Astro di Lobsite?

Tidak. Adapter untuk render server. Situs Astro statis, yang merupakan bawaan, tidak memerlukan adapter: deploy folder dist/.

Mengapa npx lobsite melakukan deploy dist/ dan bukan public/?

Di proyek Astro, public/ berisi file yang disalin build apa adanya, seperti favicon.svg. Situs hasil build adalah dist/. Lobsite melihat astro di package.json dan melewati public/ untuk Anda.

Bisakah saya menambahkan halaman 404 kustom ke situs Astro?

Ya. Buat src/pages/404.astro; Astro membuatnya sebagai 404.html, dan Lobsite menyajikannya dengan status 404 untuk alamat yang tidak ada.

Apakah pengoptimalan gambar Astro berfungsi?

Ya. astro:assets mengubah ukuran dan mengonversi gambar selama astro build, sehingga file yang dioptimalkan sudah ada di dist/ saat Anda deploy. Hanya layanan gambar sesuai permintaan yang berjalan per permintaan yang memerlukan server.

Lihat juga