DeployCode
Фреймворки

Статический сайт

Деплой статики: Vite, Astro, обычный HTML.

Статические сайты Railpack отдаёт встроенным веб-сервером Caddy.

Сайт со сборкой: Vite, Astro, React и другие

Railpack сам распознаёт SPA-фреймворки — Vite, Astro (кроме режима server), Create React App, Angular, React Router с ssr: false, Next.js с output: 'export' — выполняет скрипт build и отдаёт результат.

Каталог результата определяется автоматически: обычно dist, для Next.js — out, для React Router — build/client.

Если фреймворк не распознался или каталог другой, в настройках «Сборка и запуск» выберите:

  • Результат сборки — Статический сайт;
  • Каталог результата — каталог с готовыми файлами, например dist.

Для SPA все неизвестные пути отдают index.html, поэтому клиентский роутинг работает.

Готовый HTML без сборки

Сайт распознаётся как статический, если в корне есть index.html, каталог public или файл Staticfile.

Корень сайта выбирается так: переменная RAILPACK_STATIC_FILE_ROOT, поле root в Staticfile, каталог public, корень репозитория.

Staticfile
root: dist
index_fallback: true # отдавать index.html для неизвестных путей (SPA)

Порт

Caddy слушает переменную PORT, а без неё — 80. Порт домена по умолчанию — 3000, поэтому добавьте переменную PORT=3000 или поменяйте порт в домене на 80.

Свой Caddyfile

Чтобы настроить заголовки, редиректы или кеширование, положите свой Caddyfile в корень проекта — он заменит стандартный. Слушайте в нём :{$PORT:80}, чтобы порт по-прежнему задавался переменной.

Частые проблемы

На этой странице