01Pick the route for your kind of site
| Your site | Easiest route | Hosts |
|---|---|---|
| Plain HTML, CSS, JS | Drag the folder in, or connect a repository | Netlify, Cloudflare, GitHub Pages |
| Next.js | Import the repository | Vercel, Netlify, Cloudflare |
| Astro, Vite, Hugo | Import the repository | Any static host |
| WordPress | Managed WordPress host | Shared or managed hosting |
| Builder site | Press Publish | The builder's own hosting |
| App with a database | App platform or VPS | Vercel plus a database, Railway, Fly.io, a VPS |
02Deploying from GitHub, step by step
This works for almost every modern site and gives you automatic redeploys.
- 1Put the code on GitHubCreate a repository and push your project, including package.json if it has one.
- 2Sign in to the host with GitHubVercel, Netlify and Cloudflare all offer this.
- 3Import the repositoryThe host detects the framework and fills in the build command and output folder.
- 4Add environment variablesAPI keys and settings your site needs, entered in the host's settings, never committed to the repository.
- 5DeployThe first build takes a minute or two and gives you a URL like project.vercel.app.
- 6Connect your domainAdd it in Domains and follow the DNS instructions. How to connect a custom domain to Vercel shows the records.
03Deploying a plain HTML site without Git
If your site is a folder of files, Netlify lets you drag that folder into its dashboard and publishes it in seconds. Cloudflare offers direct upload too. This is the fastest way to get something live, though you lose automatic redeploys: every change means uploading again.
Bear in mind that Netlify's free plan charges 15 credits per production deploy out of 300 a month, per its credit documentation, so batch your changes.
04What happens on every deploy
The host clones the repository, installs dependencies, runs the build command and uploads the output to its network. If the build fails, the previous version stays live, so a broken build does not take your site down. Most hosts keep every past deploy, and rolling back is one click.
- Preview deploys: each pull request gets its own URL to review.
- Production deploys: merges to the main branch go live.
- Rollbacks: restore any earlier deploy instantly.
- Build logs: the first place to look when something fails.
05After the first deploy
Check the live site on a phone, test forms, and make sure your domain redirects consistently to one version (www or not). Then add the site to Search Console and submit the sitemap; how to get my website on Google covers that.
Choosing where to deploy? Vercel vs Netlify and how to host a website for free compare the options, and how to get a website online is the beginner's overview.
06Environment variables and secrets
Sites that call APIs, send email or talk to a database need keys. Never paste them into the code or commit them to GitHub, where they can be found and abused. Every host has an environment variables screen; add the keys there and read them in code. Most frameworks only expose variables with a public prefix to the browser, so anything secret stays on the server.
- Separate values for preview and production deploys.
- Rotate a key immediately if it was ever committed.
- Redeploy after changing variables; most hosts read them at build time.
What people who tried it say
Hacker News developers value Git-based deploys, free SSL and previews from modern hosts, and often recommend them over managing servers for anything static.
- Ask HN: What free or low-cost static site hosting do you use most?Hacker News
Commenters highlight continuous deployment from GitHub and free SSL on custom domains as the reasons they moved off shared hosting.
Looking for more first-hand opinions? Search Reddit for “how to deploy a website”. We link the live threads rather than summarizing them, so you read them in full.
Our take
deploy from GitHub even for small sites. The automatic redeploys, previews and one-click rollbacks save more time than the five minutes of setup.
Where this falls short
Every host's dashboard is slightly different and changes over time. Sites with databases, background jobs or long-running servers need more than this guide covers.
Orlume skips deployment setup entirely: press Publish, pick a name and the site is live at name.orlume.site. The free plan includes 10 message credits.
Free to start · No card required · Live in one click
Sources
- 1.Adding and configuring a custom domain · Vercel Docs
- 2.How credits work · Netlify Docs
- 3.Cloudflare Pages · Cloudflare Docs
Researched and written by the Orlume team · Updated October 2026

