When you have a site visitor, they use your domain name to view your website. As simple as it seems, there is a process that occurs from the time that the site visitor types in your domain and presses enter.
When a site visitor enters your domain name into a browser, the domain is then translated into your server IP address, then the server sends that user your site files, which their browser represents to them as a typical web-page.You can see that, without each of these 3 elements, you won't really have a web-site.
The three basic parts that make up any current day website are:
Computers communicate by using numbers, called IP addresses, to contact each other, much like you use a phone number to dial a specific person's phone. Domain names on the internet are much like entries in a phone book. The phone book tells people looking for a business what the entries are just as a domain tells people (i.e. their computers) that a domain is hosted on the server.
Without a domain you would not be able to use a domain name such as mysite.com, making your site appear unprofessional and impractical if your visitors are able to load it at all.
The web-hosting or server is much like the space that you rent out to have your business in. It's merely the space itself. It does not include furnishings like shelves for your products, just as the web-hosting account doesn't include a site for you to sell your products.
Without the hosting services, you won't have a place for your files to reside, so your domain would then become like a disconnected phone number in the phone directory, and your site files would have nowhere to stay.
The site files are what your visitors and potential customers actually see when going to site such as your products and services. The site files are the same as any other file you normally use, like a .jpg photograph, or .mp3 music file. Though, website files are also .php files or .html files, which are PHP scripts or html pages respectively.
The web-hosting server knows how to read these files, which explain how the webpage looks or instruct the server to do a series of computations. These computations are things like figuring out what blog article it's supposed to send back to the viewer, or what forum post it's supposed to send back.