Astro за замовчуванням створює статичний сайт: кожна сторінка стає HTML-файлом у dist/, лише з тим JavaScript, який потрібен вашим островам. Цієї папки достатньо для Lobsite. Виконайте npm run build, потім npx lobsite у проєкті — і сайт доступний за адресою *.lobsite.app з HTTPS. Також можна перетягнути dist/ у поле вище.
Як це працює
- Зберіть сайт командою
npm run build(цеastro build). Сторінки, зображення та скрипти потраплять уdist/. - Виконайте
npx lobsiteу проєкті. Команда розгортаєdist/, а неpublic/, яку Astro вже скопіював у збірку. Перше розгортання не потребує облікового запису й діє 6 годин. - Збережіть сайт за посиланням для збереження в безкоштовному обліковому записі. Папка зберігається в
lobsite.toml, тому наступна збірка розгортається тією самою командоюnpx lobsite.
Налаштування, які варто перевірити в astro.config.mjs
import { defineConfig } from "astro/config";
export default defineConfig({
site: "https://my-site.lobsite.app",
trailingSlash: "ignore",
});
site— ваша повна адреса. Astro використовує її для канонічних URL,Astro.siteі карти сайту від@astrojs/sitemap. Укажіть адресу*.lobsite.appі змініть її після переходу на власний домен.baseзалиште невстановленим: сайт доступний від кореня адреси, а не з підпапки, як сайт проєкту на GitHub Pages.build.formatможна залишити типовим.about/index.htmlвідкривається за/about/, а файлabout.html— за/about.
Що працює, а для чого потрібен сервер
Працює все, що Astro генерує під час збірки: колекції вмісту, Markdown і MDX, зображення astro:assets (оптимізовані під час збірки) та острови React, Vue, Svelte чи Solid, які виконуються в браузері. Не працює те, що виконується для кожного запиту: сторінки з export const prerender = false, output: "server", Astro Actions і кінцеві точки API без попередньої генерації. Для них потрібен серверний адаптер, а Lobsite лише віддає файли. Для контактної форми вкажіть /_lobsite/forms/contact замість Astro Action; дивіться форми.
Файли зберігаються за хешем. Повторне розгортання незміненого сайту завантажує 0 байтів.
Перегляньте перед публікацією. Відкотіть одним натисканням разом із перенаправленнями.
Кожен сайт отримує адресу *.lobsite.app із HTTPS від першого розгортання.
Спрямуйте форму на /_lobsite/forms/contact. Фільтрація спаму включена.
Перенаправлення, заголовки та форми зберігаються в lobsite.toml і супроводжують кожне розгортання.
Сайт без облікового запису працює 6 годин. Посилання для збереження дозволяє залишити його безкоштовно.
Порівняння хостингів Astro
| Lobsite | Netlify | Vercel | GitHub Pages | |
|---|---|---|---|---|
| Статичні сайти Astro | Так | Так | Так | Так, із GitHub Action від Astro |
| Серверний рендеринг (адаптер) | Ні | Так | Так | Ні |
| Збірка на сервері | Ні: ви розгортаєте dist/ |
Так | Так | У GitHub Actions |
| Обліковий запис перед першим розгортанням | Ні: працює 6 годин, потім можна зберегти безкоштовно | Так | Так | Так, і репозиторій |
| Форми без бекенду | Так, після додавання сайту до облікового запису | Так | Ні | Ні |
| Власний домен | Так, безкоштовно | Так | Так | Так |
Якщо частини сайту генеруються на запит, оберіть хостинг з адаптером Astro. Якщо сайт статичний, як за замовчуванням в Astro, Lobsite розгортає його за секунди з вашого комп’ютера, CI чи за допомогою AI-агента, завантажуючи лише змінені збіркою файли.
Поширені запитання
Чи потрібен адаптер для хостингу Astro на Lobsite?
Ні. Адаптери потрібні для серверного рендерингу. Статичному сайту Astro, який створюється за замовчуванням, адаптер не потрібен: розгорніть папку dist/.
Чому npx lobsite розгортає dist/, а не public/?
У проєкті Astro папка public/ містить файли, які збірка копіює без змін, наприклад favicon.svg. Зібраний сайт міститься в dist/. Lobsite бачить astro у package.json і сам пропускає public/.
Чи можна додати власну сторінку 404 до сайту Astro?
Так. Створіть src/pages/404.astro; Astro збере її як 404.html, а Lobsite віддаватиме її зі статусом 404 для будь-якої адреси, якої не існує.
Чи працює оптимізація зображень Astro?
Так. astro:assets змінює розмір і формат зображень під час astro build, тому оптимізовані файли вже містяться в dist/ під час розгортання. Сервер потрібен лише для сервісів зображень, які виконуються на кожен запит.