Persistent server versus Pages
| ESA Pages | ECS / Simple Application Server |
|---|---|
| Publishes static build output | Runs a persistent operating system and processes |
| No Express listener required | Express can listen continuously behind a reverse proxy |
| Platform handles static delivery | You manage patches, firewall, process uptime and backups |
ECS or Simple Application Server?
Simple Application Server packages compute, storage and networking for a simpler standalone deployment. ECS provides more granular infrastructure and networking control. Select based on workload and operational needs—not only the initial price.
Safe deployment outline
- Create a Linux server near the intended users and configure key-based SSH access.
- Patch the operating system and install a supported Node.js release.
- Deploy source, run
npm ci --omit=devand configure secrets through protected environment variables. - Run Express under a process supervisor and bind it to localhost rather than exposing its development port directly.
- Place a maintained reverse proxy in front, allow only required firewall ports and configure HTTPS.
- Enable logs, monitoring, backups and security updates; test restore and restart behaviour.
Connecting RDS comes later
Before adding a managed database, learn private networking, security groups, least-privilege database users, encrypted connections, schema migrations, backups, connection pooling and secret rotation. RDS and its network traffic can generate separate charges.
Keep the static frontend on ESA Pages and expose only the required API routes from the server. Never put database credentials in Vite environment variables shipped to the browser.