Shared Web Hosting
In shared web hosting, IP addresses are used to manage the files associated with domain names on web server network hardware resources. Multiple websites can be hosted on a single web server to publish information online or pooled together in a data center to share network system resources such as CPU, RAM, storage drives, and bandwidth providers. The resources of a single web server hardware unit can support thousands of different domain names on a web hosting network, providing a cost-efficient method of web publishing. A single data center can host millions of domain names and web site files using shared resources in the remote network or cloud computing model.
The different types of shared web hosting are categorized by: 1) the operating system that is used on the web server, 2) the platform software that is used to deploy the hosting network, or 3) the specific features included in the server software stack that are installed for use by particular web applications.
- Linux: Shared Linux hosting plans run on open source software and are normally installed with the LAMP software stack (Linux, Apache, MySQL, PHP, Python, & Perl) and a utility suite.
- Windows: Shared Windows hosting plans run on Microsoft software and are usually installed with the WIMP software stack (Windows, IIS, MSSQL, PHP, Python, & Perl) and ASP.NET.
- cPanel: Shared cPanel hosting plans run on CentOS Enterprise Linux with WHM and include licensed use of the cPanel software utility for multi-domain management and server administration. Many shared hosts also use WHMCS for client account management and billing.
- Platform-Specific: Some web hosts offer WordPress hosting plans, Drupal hosting plans, Joomla hosting, etc. under a platform-specific approach by installing software tools for a CMS/CRM.
The use of WHM (Web Host Manager) with cPanel in web hosting is the most common means of deploying a shared web hosting environment in a data center on a computer network. WHM includes the ability to create and manage user accounts on a web server network; to monitor network traffic to the web servers; to manage file transfers and data backups; as well as to add over 500 different modules to the platform from third-party vendors that expand the business applications or technical functionality of the software. WHM simplifies the process of custom coding a web hosting network by offering a “Platform as a Service” (PaaS) software product to companies under a commercial license.
Otherwise, the creation of a web hosting platform can be very complex and require thousands of hours of technical programming to develop. The image below shows a basic diagram of a web hosting network created using IIS servers and the Windows Web Platform:
Like WHM, which is bundled with a special distribution of CentOS Enterprise Linux or CloudLinux, the Windows Web Platform with Microsoft Server and IIS provide a package of software tools that can be used to deploy a shared web hosting network. A modular framework is used to add increased functionality to the platform by installing additional programs from Microsoft and third-party vendors.
The main components of a shared web hosting network deployed using the Windows Web Platform are:
- Front-end Servers: The front-end servers are configured with proxy-routing software that reads incoming web traffic requests based on HTTP protocols and forwards them to the appropriate location on the network, often using algorithm-based load balancing methodologies. A firewall is used to establish a primary level of network security and screen out malicious activity.
- Back-end Web Servers: The back-end web servers are installed with the WAMP stack and include the user account files that are hosted for web publishing. An example of this would be a server running ASP.NET and the website files that are processed on the hardware for transfer to a web browser. Optionally, separating the database server from the file servers is done to improve overall network performance.
- Database Servers: The database servers contain website variable information stored in tables which is managed by an integrated set of software tools which isolate the different accounts and provide security when processing web traffic requests. A shared web server can contain thousands of databases on a single hardware instance, all with different public ownership.
- Web Server Farms: The web server farms include millions of user account files stored by the company on a network under the various shared web hosting accounts. Some platforms allow for website data to be duplicated or mirrored in order that the routing server can direct incoming web traffic to the hardware that can process the file transfer request most quickly.
- Remote Administration: Technicians in the data center need to monitor web traffic and the performance of all the different hardware in order to make sure that no service problems arise. Examples of this can be web traffic spikes that lead to server hardware failure, RAID storage drive malfunctions, or performing regular maintenance on network server equipment.
Most web hosting companies run shared hosting, VPS platforms, and dedicated servers together in a single data center with hardware available that is based on multiple operating systems. Although this increases the complexity of the overall network, the same fundamental principles govern the system, where the DNS servers route web traffic requests to the designated hardware in order to transfer the data files via packet requests. The use of distinct FTP and mail servers may also be employed to separate HTTP requests from other varieties of web traffic.
The advantages of shared web hosting is that it allows many people to publish information on the web in an affordable manner without the requirement of maintaining a web server individually. Websites require network services that are available 24/7/365 through connections to the high-speed fiber optic internet backbone connections that relay the majority of web traffic requests internationally. Because a single website or domain presence usually only requires a fraction of the resources that a modern web server provides, many publishers can share technology in a data center at a cost of only a few dollars per month. When a website or mobile application scales to require more server resources than a shared web hosting account can support, an upgrade to a VPS, dedicated server, or cloud hosting platform is required. Network load balancing, advanced page caching, CDN services, or server software alternatives to Apache can all be implemented to increase the amount of traffic a particular web server can manage.