When the preparation of your site is complete all its files have to be transferred to an online server to make them available on the internet, and your domain address has then to be linked to the server. The process of storing your site's files and passing them to internet visitors on demand is known as hosting.
Web servers are run on computers with high storage capacity, capable of rapidly streaming web pages to internet users. I hire server space from Heart Internet Ltd or Orchard Internet Ltd for most of the sites I maintain, though I have used various alternative hosts where the client has required.
On dynamic sites, where the contents can change in response to visitor and/or client input, servers have the extra tasks of extracting the page components from the database, and of rendering these into a page before sending it to visitor's browser.
The server has to be matched with the programming language used to set up dynamic pages. Most web servers are run on either the open source Linux-Apache-MySQL-PHP system or the equivalent Microsoft software. Because open source software is either free or low cost I have always followed this route - and it is worth noting that Apache is the most widely used web server on the internet. Aside from server issues I do run some Microsoft software, however, in order to remain compatible with clients' systems.