Shared web hosting service

A shared web hosting service is a web hosting service where many websites reside on one web server connected to the Internet. The overall cost of server maintenance is spread over many customers. By using shared hosting, the website will share a physical server with one or more other websites.

Description
The service usually includes system administration as it is shared by many users. This is a benefit for users who do not want to deal with it, but a hindrance to power users who want more control. In general, shared hosting will be inappropriate for users who require extensive software development outside what the hosting provider supports. Generally, most applications intended to be on a standard web server work well with a shared web hosting service. On the other hand, shared hosting is cheaper than other types of hosting such as dedicated server hosting. Shared hosting usually has usage limits and hosting providers should have extensive reliability features in place. Shared hosting services typically offer basic web statistics support, email and webmail services, auto script installations, updated PHP and MySQL, and basic after-sale technical support that is included with a monthly subscription. It also typically uses a web-based control panel system. Most of the large hosting companies use their custom-developed control panel or cPanel. Control panels and web interfaces can cause controversy however since web hosting companies sometimes sell the right to use their control panel system to others. Attempting to recreate the functionality of a specific control panel is common, which leads to many lawsuits over patent infringement.

Shared web hosting services
In shared hosting, the provider is generally responsible for managing servers, installing server software, security updates, technical support, and other aspects of the service. Most servers are based on the Linux operating system (OS) and LAMP. Some providers offer Microsoft Windows-based or FreeBSD-based solutions. Server-side facilities for either operating system have similar functionality (for example: MySQL (database) and many server-side programming languages (such as the widely used PHP programming language) under Linux, or the proprietary SQL Server (database) and ASP.NET programming language under Microsoft Windows.

There are thousands of shared hosting providers in the world. They range from "mom-and-pop shops" and small design firms to multimillion-dollar providers with hundreds of thousands of customers.

Shared web hosting can also be done privately by sharing the cost of running a server in a colocation center; this is called cooperative hosting.

Implementation
Shared web hosting can be accomplished in two ways: name-based and Internet Protocol-based (IP-based), although some control panels allow a mix of name-based and IP-based on one server.

IP-based
In IP-based virtual hosting, also called dedicated IP hosting, each virtual host has a different IP address. The web server is configured with multiple physical network interfaces or virtual network interfaces on the same physical interface. The web server software uses the IP address the client connects to, to determine which website to show the user.

Name-based
In name-based virtual hosting, also called shared IP hosting, the virtual hosts serve multiple hostnames on a single machine with a single IP address. This is possible because when a web browser requests a resource from a web server using HTTP/1.1 it includes the requested hostname as part of the request. The server uses this information to determine which website to show the user.

DNS and name servers
DNS stands for "Domain Name System". The domain name system acts like a large telephone directory and within is the master database, which associates a domain name such with the appropriate IP number. When the domain name is registered/purchased on a particular registrar's "name server", the DNS settings are kept on their server, and in most cases point the domain to the name server of the hosting provider. This name server is where the IP number (currently associated with the domain name) resides.