Web Development · March 2026
How to Make My Website Live: From Local to Production
Your website works perfectly on localhost. Now what? Going from a local development environment to a live, publicly accessible URL involves several steps: choosing a hosting provider, buying a domain, configuring DNS, setting up SSL, and deploying your code. This guide covers each step in detail so you can launch with confidence.
Understanding the Basics: What "Going Live" Actually Means
When your site runs on localhost:3000, it is only accessible on your machine. Making it "live" means placing your files on a server that is connected to the internet 24/7, then pointing a domain name to that server so anyone can visit it by typing a URL into their browser.
The three core components are: hosting (where your files run), a domain name (the address people type), and DNS (the system that connects the two).
Step 1: Choose a Hosting Provider
Your hosting choice depends on what your site is built with and how much traffic you expect. Here are the most popular options in 2026:
Vercel — Best for Next.js and React
Vercel is the company behind Next.js and offers the smoothest deployment experience for React-based sites. Connect your GitHub repository, and every push to main automatically deploys a new version. Vercel handles SSL, CDN edge caching, and serverless functions out of the box. The free tier is generous enough for most personal and small business sites.
Netlify — Best for Static Sites and JAMstack
Netlify is excellent for static sites, Hugo, Gatsby, and Astro projects. Like Vercel, it provides git-based deployments, automatic SSL, and a global CDN. Netlify also offers built-in form handling and identity management, which can be useful for simple sites that need a contact form without a backend.
AWS — Best for Complex, Scalable Applications
Amazon Web Services gives you maximum control. For a static site, you can use S3 + CloudFront. For server-rendered apps, EC2 or AWS Amplify are solid choices. AWS is more complex to configure, but it scales to virtually any level of traffic and offers services for every possible need — databases, authentication, email, file storage, and more.
Traditional Hosting (cPanel, Shared Hosting)
For straightforward PHP or WordPress sites, shared hosting providers like Afrihost (in South Africa), Hetzner, or SiteGround still work fine. You upload files via FTP or the file manager, and the server handles the rest. This is the simplest option but offers the least flexibility.
Step 2: Register a Domain Name
Your domain is your address on the internet. Choose something memorable, relevant to your brand, and easy to spell. For South African businesses, a .co.za domain signals local presence, while .com works well for international reach.
Popular registrars include Namecheap, Google Domains, Cloudflare Registrar (often the cheapest for renewals), and domains.co.za for South African TLDs. Prices range from R50/year for a .co.za to $10–15/year for a .com.
Step 3: Configure DNS
DNS (Domain Name System) translates your domain name into the IP address of your hosting server. You configure DNS by adding records in your domain registrar's dashboard or in a dedicated DNS provider like Cloudflare.
The most common records you will set:
- A Record — points your domain to an IPv4 address (e.g., 76.76.21.21 for Vercel).
- CNAME Record — points a subdomain (like www) to another domain name.
- AAAA Record — the IPv6 equivalent of an A record.
- TXT Record — used for verification (e.g., proving you own the domain to Google or your hosting provider).
DNS changes can take anywhere from a few minutes to 48 hours to propagate globally, though most updates are visible within an hour. You can check propagation at tools like dnschecker.org.
Step 4: Set Up SSL (HTTPS)
SSL certificates encrypt the connection between your visitors and your server. In 2026, HTTPS is non-negotiable — browsers flag HTTP sites as "Not Secure," and Google uses HTTPS as a ranking signal.
The good news: most modern hosting platforms provide SSL automatically. Vercel, Netlify, and Cloudflare all issue free SSL certificates via Let's Encrypt the moment you connect your domain. If you are on traditional hosting, you can use Certbot to install a free Let's Encrypt certificate, or your host may offer one-click SSL.
Step 5: Deploy Your Code
The actual deployment process varies by platform. Here is how it works on the three most popular options:
Deploying to Vercel
Install the Vercel CLI with npm i -g vercel, run vercel in your project directory, and follow the prompts. Alternatively, import your GitHub repository from the Vercel dashboard — every push triggers an automatic deployment.
Deploying to Netlify
Drag and drop your build folder into the Netlify dashboard, or connect your Git repository for continuous deployment. Set your build command (e.g., npm run build) and publish directory (e.g., out or dist).
Deploying to AWS S3 + CloudFront
Build your site locally, upload the output to an S3 bucket configured for static website hosting, then set up a CloudFront distribution to serve it globally with HTTPS. The AWS CLI makes this scriptable: aws s3 sync ./out s3://your-bucket.
Post-Launch Checklist
Your site is live, but the work is not done. Run through this checklist to make sure everything is solid:
- Verify HTTPS is working — visit your site and check for the padlock icon.
- Test on mobile devices — responsive design issues are common.
- Check page speed with Google PageSpeed Insights or Lighthouse.
- Submit your sitemap to Google Search Console.
- Set up analytics (Google Analytics, Plausible, or Umami).
- Configure redirects for any old URLs if this is a redesign.
- Test all forms, links, and interactive elements.
Common Mistakes When Going Live
At ULB Media, we have deployed hundreds of websites for clients across South Africa and beyond. These are the mistakes we see most often:
- Forgetting environment variables — API keys and database URLs that work locally need to be set in your hosting provider's dashboard.
- Not setting up www redirect — decide whether www.yourdomain.com or yourdomain.com is canonical, and redirect the other.
- Missing error pages — configure custom 404 and 500 pages so users do not see a generic hosting error.
- No caching headers — set appropriate cache-control headers for static assets to improve performance.
Taking your site from localhost to production is a satisfying milestone. With the right hosting provider, proper DNS configuration, and a solid deployment pipeline, the process is straightforward and repeatable.
Need help deploying your website?
ULB Media handles hosting, domains, DNS, and deployment so you can focus on your business — not server configuration.
Get in Touch