Usually a single machine placed in a private residence can be used to host one or more web sites from a usually consumer-grade broadband connection. These can be purpose-built machines or more commonly old PCs. Some ISPs actively attempt to block home servers by disallowing incoming requests to TCP port 80 of the user's connection and by refusing to provide static IP addresses. A common way to attain a reliable DNS host name is by creating an account with a dynamic DNS service. A dynamic DNS service will automatically change the IP address that a URL points to when the IP address changes.
Think of your domain name as a street address for your website. Without a domain name, you would have to tell customers to visit your website at an IP-based url such as 184.108.40.206/~yourwebsite instead of yourwebsite.com. The former is not very memorable or friendly to human eyes and will surely result in not that many visits to your website. While it is not mandatory that you have a website domain name, nor is it mandatory that a domain you own be attached to a website, for a successful online presence you truly will want to get your own domain name to ensure your website has the proper air of professionalism and appropriate branding.
When you buy a Premium Domain name, you are also buying strong branding potential, high recall, and the ability to attract more traffic to your site. Finding a relevant domain name to your business will provide you a storefront online, allowing your customers the most access to your products as possible. Your domain name is an investment that is easy to map back to success, and the perfect available domain name is just around the corner.
The user gets his or her own Web server but is not allowed full control over it (user is denied root access for Linux/administrator access for Windows); however, they are allowed to manage their data via FTP or other remote management tools. The user is disallowed full control so that the provider can guarantee quality of service by not allowing the user to modify the server or potentially create configuration problems. The user typically does not own the server. The server is leased to the client.
A complex site calls for a more comprehensive package that provides database support and application development platforms (e.g. ASP.NET, ColdFusion, Java EE, Perl/Plack, PHP or Ruby on Rails). These facilities allow customers to write or install scripts for applications like forums and content management. Also, Secure Sockets Layer (SSL) is typically used for websites that wish to keep the data transmitted more secure.