Shipping: Hosting, Domains, Forms & Launch
Hosting options, DNS and email authentication, forms, analytics and privacy, environments and a launch checklist.
Launching means putting the site online with a domain, working forms and tracking. The client should own the domain. Test the form end to end, keep secret keys out of the page code and use a launch checklist so nothing is missed.
- Hosting
- The computer that serves your website to visitors.
- DNS
- The system that connects a domain name to your site.
- Staging
- A private copy of the site for testing before going live.
A site on your laptop earns nothing. Getting it live reliably is the part that clients assume you have handled. It means a proper domain, working forms, analytics and a safe way to update it. It is also the part where inexperienced builders cause embarrassing and sometimes costly problems. This lesson is a practical tour of shipping a small-business site, with checklists.
Hosting options
- Static hosting with a CDN: for sites built as static files, such as marketing sites and portfolios. It is fast, cheap or free, and very secure. Connect it to your git repository for automatic deploys.
- Platform or serverless hosting: when you need server-side rendering or API routes. It also deploys from git.
- Traditional shared or managed hosting: sometimes needed for CMS-based sites. It needs more upkeep.
- Site-builder hosting: the simplest, but it ties you to the platform and its prices.
Domain, DNS and email
- The client should own their domain. Register it in their name, or in an account you can transfer. Never hold a client's domain hostage.
- Know the basics. A, AAAA and CNAME records point the name at the hosting. MX records route email. TXT records prove ownership and sign email.
- Set up SPF, DKIM and DMARC for the domain's email, so that messages, including contact-form notifications, do not land in spam.
- HTTPS is a must, and it is usually automatic. Redirect www and non-www, and http to https, in a consistent way.
- Before a move, lower the DNS TTL values. Keep the old site running until the switch is checked.
Forms and data
Forms are where sites quietly fail. Submissions vanish, spam floods in, or personal data leaks. Use a reliable form service, or your own serverless function. Validate on the server, and never only in the browser. Add spam protection, such as a honeypot field or a privacy-friendly challenge. Send a confirmation to the visitor and a notice to the client. Store submissions somewhere the client can reach. Test the full path from start to finish, including the email arriving.
Analytics, consent and privacy
- Install analytics that answer the client's questions: visits, sources and conversions, such as form submissions, calls and bookings.
- Consider privacy-friendly analytics that do not need cookie banners, where that is suitable.
- If you use cookies or trackers, follow the laws that apply to your visitors, such as consent rules in the EU and UK. Get advice for edge cases.
- Publish a clear privacy policy that matches reality. Do not copy one blindly, or let AI invent one that does not describe what the site does.
Environments and releases
- Keep a staging, or preview, site for client review, and a production site for the public.
- Deploy from git, so every change is tracked and can be undone.
- Use environment variables for settings. Do not hard-code values.
- Keep a simple rollback plan: deploy the previous commit again.
Launch checklist
CONTENT [ ] facts verified by client (prices, hours, address, phone) [ ] no placeholder text
SEO [ ] titles + meta [ ] h1 per page [ ] alt text [ ] sitemap.xml [ ] robots.txt not blocking
[ ] JSON-LD [ ] 301 redirects from old URLs [ ] Search Console + Business Profile set up
SOCIAL [ ] Open Graph image + title/description [ ] favicon + touch icons
TECHNICAL [ ] HTTPS + redirects [ ] 404 page [ ] forms tested end to end [ ] spam protection
[ ] analytics + conversion goals [ ] cookie/privacy handled [ ] no console errors
QUALITY [ ] Lighthouse mobile passes agreed targets [ ] keyboard + screen-reader pass
[ ] tested iPhone Safari, Chrome, Firefox [ ] 375/768/1024/1440 checked
OPERATIONS [ ] domain + hosting owned by client [ ] credentials handed over securely
[ ] backups/rollback plan [ ] uptime monitoring [ ] maintenance plan agreed- ✓Choose hosting by need, deploy from git, and let the client own the domain and the accounts.
- ✓Set up DNS, HTTPS and email authentication (SPF, DKIM and DMARC) properly.
- ✓Test forms from end to end, validate on the server, protect against spam and treat privacy honestly.
- ✓Use a launch checklist. Keep keys out of front-end code and public repositories.
Ship a real site from start to finish
- Deploy your project to a hosting provider from a git repository. Get a live preview address.
- Connect a cheap or free domain. Set up HTTPS and redirects, and check them.
- Wire a contact form to your inbox. Test the spam protection. Confirm the email lands in the inbox and not in spam.
- Complete the launch checklist, and record what you missed the first time.
Q1Why should the client own their domain?show answer
It is their business asset. You avoid disputes and risk, and they keep control if the working relationship ends.
Q2Why is validation in the browser alone not enough?show answer
Browser checks can be bypassed. The server must check and clean input to protect data and stop abuse.
Q3Where should secret API keys live?show answer
In environment variables on the server. Never in front-end code, and never committed to a public repository.