To understand web hosting we need to first understand what exactly the term web host means. A web host can be interpreted either as a web server where different types of web sites are provided space for publishing web pages on the Internet or as a web hosting company. By hosting web sites on their web servers, web hosting companies provide web hosting services to their clients. Therefore, web hosting companies are also known as web hosts.
Typically clients can buy different hosting packages from these web hosting companies in order to have their presence on the internet in the form of a website. These web sites are hosted on a web server. Anybody who is connected to the internet can access these web pages by typing in the browser address bar either the domain name or the ip address of the web site. Web hosting companies charge a monthly/quarterly/yearly subscription fee for the service rendered by them.
Most web hosting companies provide Linux based web hosting which offers a wide variety of diverse software. A typical Linux server based web hosting configuration will be Linux as Operating System, Apache as web server, MySQL as a Database Management along with PHP/Perl/Python as server side scripting. Most web hosting companies provide many additional services in order to make technical aspects easier for the end users.