Web Hosting
Web hosting is the service or infrastructure used to make a website available to people over the internet.
At its simplest, hosting provides a server environment from which website resources can be delivered.
MDN describes web hosting as making website files available on a web server so they can be delivered to website visitors. MDN's guide to publishing a website
What Hosting Can Include
Depending on the provider, hosting may include:
- Web Server
- Storage
- Databases
- PHP or other application runtimes
- Backups
- TLS certificates
- CDN
- Caching
- Deployment tools
- Staging environments
- Monitoring
- Security controls
- Website CMS
Different hosting products package these responsibilities differently.
Common Hosting Models
Hosting can take forms such as:
### Shared hosting
Several websites share underlying infrastructure.
### Virtual private server
A customer receives an isolated virtual server environment with greater control.
### Managed hosting
The provider takes responsibility for more of the server and application administration.
### Cloud hosting
Resources run on cloud-computing infrastructure that may span many physical systems.
### Platform hosting
The provider manages most infrastructure around a particular application or framework.
Ghost(Pro), managed WordPress providers, Netlify, and similar services are examples of more platform-oriented hosting experiences.
Hosting vs. Domain
Hosting is where the website runs.
The Domain Name is the address people use to reach it.
They can be purchased from the same provider without becoming the same service.
Hosting vs. DNS
DNS tells clients where to find the site.
Hosting answers the actual request once it arrives.
Moving the site to a new host usually involves updating DNS only after the new environment is ready.
Why It Matters
Hosting can affect:
- Reliability
- Website Performance
- Security
- Backups
- Deployment
- Server configuration
- Scalability
- Maintenance
- Technical support
The cheapest hosting environment is not necessarily the lowest-cost environment to operate.
Common Problems
Common problems include:
- Hosting account controlled by developer
- No backups
- No staging environment
- Unsupported software
- Poor Website Performance
- Hosting selected only by advertised storage
- Too much infrastructure for a simple website
- Several proxy/CDN layers nobody understands
- DNS and hosting migrated simultaneously without a plan
How to Improve
Choose hosting around the website's actual requirements.
Consider:
- CMS/platform
- Expected traffic
- Server-side requirements
- Ecommerce
- Backups
- Geographic requirements
- Maintenance responsibility
- Deployment workflow
- Performance
- Support
- Data portability