Appearance
Astro
Static (default)
An Astro project without a server adapter is built with your build script and the output (dist/, or outDir from astro.config.*) is served by nginx. Hashed assets under /_astro/ are cached long-term.
Server rendering with @astrojs/node
js
// astro.config.mjs
import { defineConfig } from 'astro/config'
import node from '@astrojs/node'
export default defineConfig({
output: 'server',
adapter: node({ mode: 'standalone' }),
})The builder starts node ./dist/server/entry.mjs, which listens on HOST and PORT (both set by Fjordrun).
With mode: 'middleware', Astro does not start a server itself: add a start script that runs your own server (for example an Express app that mounts Astro's handler). The build fails with a clear message if there is none.
Other adapters
@astrojs/vercel, @astrojs/netlify, @astrojs/cloudflare and @astrojs/deno produce output for those platforms only, and the build stops with:
text
Astro is configured with the @astrojs/vercel adapter, whose output only runs on that platform. Use @astrojs/node (mode: 'standalone') for a server, or remove the adapter for a static site.Start command
Leave it empty. astro preview and astro dev are ignored as start commands.