Do you want to have a website or do you already have one, but there is still something you don’t understand about its meaning? This is normal because a complete understanding of web hosting includes a separate understanding of the main components of which it is built.
All unfamiliar words from web hosting that you have heard or seen in contact with our technical support or our help documentation are associated with three main terms – web, host and domain.
If you understand their importance, you will largely understand what web hosting is.
1. Web (site)
The Web (WWW) is a virtual information network made up of websites. Websites are collections of hypertext documents (web pages) that may contain links to other web pages. This information network is accessed via the Internet (a global system of interconnected computer networks).
The main components of the web:
Hypertext – The term (hypertext) consists of the Greek word (prefix) “υπερ-“, meaning “super-“, “super-“, “over-“, and the word text (super-text, hyper-text). Hypertext is plain text to which links to other texts are added. These links are a way to connect and access additional information.
HTML – Hypertext is written in HTML language. HTML stands for HyperText Markup Language.
Web page – A page of a website that contains HTML code. Web pages have their own unique web addresses, displayed after the name of the site.
Website – A collection of HTML pages (web pages). The website has a name by which we open it in the browser.
Web server – The web server receives and returns responses to requests made over the HTTP protocol from other applications called clients. The most used client that connects to the web server is the web browser. The most popular applications used for a web server are Apache and Nginx.
HTTP, HTTP / 2 – HyperText Transfer Protocol is a protocol for transferring hypertext to the Internet. This protocol defines the rules by which information is exchanged between a web server and a web client (most commonly a web browser).
Web browser – A web browser is a program on your computer or mobile device that connects to a web server so that we can browse websites on the web. Some of the most famous browsers are Chrome, Safari, Firefox.
Website means a place on the web that can be found by its domain name. In this “place” we will find a collection of files and data. A website is like a book that contains individual web pages that contain certain information. Web pages and the information in them are stored on a hosting server, which is located on the Internet. And the connection to the server and browsing the website is done through the web browser.
HTTPS – When TLS encryption is applied to the HTTP protocol, then we say that the connection to the site is secure – HTTPS (S at the end means “secure”).
SSL / TLS – Encryption Protocols. TLS is the newer protocol. Encryption is used to protect data from interception. It is applied to the protocols for communication on the Internet – HTTP (S), FTP (S), SMTP (S) and others.
SSL / TLS certificate – To establish a secure encrypted connection between the web server and the web browser, the server must have an SSL / TLS certificate installed.
Web Application – This is a more complex in terms of functionality and implementation website. For example, a web application is the web mail client, the control panel of the hosting account, the online banking application and others. Web applications are more like those running on a computer.
The most important files in the collection are the HTML files, because they represent the individual web pages of the site. The remaining files have a complementary role to the construction of the pages in the browser, they can be for functionality, settings, design, style, effects and more.
Websites have static or dynamic web pages. Which simply means that the HTML files of the former are pre-created, while the latter are generated instantly when requested by the web browser.
A static site means that the HTML files on its pages are pre-created (written) and then located in a server directory.
Changing the web page is done by editing the HTML code in the corresponding .html file. For example, to change the contact phone on the Contacts page, we need to edit the contact.html file.
Dynamic sites also use HTML code for web pages, but it is a temporary block of code only until it is sent to the web browser. This HTML code is not written to a permanent file in the server directory. Therefore, when we look in the directory of a WordPress site, for example, we cannot find HTML files on its pages.
To generate the HTML code of a page, the dynamic site uses, for example, PHP scripts that can extract information from the database.
Related to dynamic websites and how they work:
PHP script – A file containing PHP code that performs a specific function in the overall operation of the site. For example, the index file index.php meets the requests of site visitors and initiates the process of generating the web page (its HTML code). Many other PHP scripts are started and executed in the process (for example, for the configuration of the system, for the connection to the database, for the retrieval of what it is looking for, etc.).
Database – The database is a virtual container in which the content of the dynamic site is stored. The SQL (Structured Query Language) language is used to extract and manipulate the data in the database. There are different types of databases – MySQL, PostgreSQL, SQLite and others.
Load time – This is the time it takes for a page of the site to load in the browser. This time can be measured with different tools, but it is not the same for every visitor to the site. Instead, there is another, more important indicator of the speed of the site – the user experience.
TTFB (time to first byte) – The time for the first byte is the time at which the browser waits for a response from the server.
Caching – This is a technique for writing dynamically generated HTML code to web pages. Once the code is cached, the next time you request the same page, it is served directly to the web browser. This speeds up the loading of the website. The dynamic nature of web pages implies the time it takes to generate them. This process can be influenced by factors such as suboptimal script execution or database size. Sample caching tools and technologies: SuperCache, Redis / Memcached and OPCache.
CDN (Content Delivery Network) – A network of servers located around the globe, from which the content of a site can be loaded. Or at least the static content. Serves for accelerated loading of the site from any point of the orb. Site elements are loaded from the nearest CDN server. These items are pre-copied from the server (source of the original content). An example CDN service is Cloudflare (can be activated via cPanel).
But no matter what the site is – static or dynamic, or how it is created, what technologies, programming languages and methods are used – its web pages can be only HTML code (located in permanent .html files or temporarily in the memory of server). The reason for this is that for the browser HTML code is the main tool by which the page is built on the screen.
Until you create two or three HTML files to link to a website and then create a WordPress site with one or two pages in it, you won’t fully understand why the former is called a static website and the latter a dynamic one.
No matter how much more complex the dynamic site may look compared to the static one, nowadays its construction and management is easily achievable without special technical knowledge. CMS platforms do everything for us, taking care of the technical part and we do not have to understand how the files and the database work in sync when loading the site.
For example, WordPress is a CMS platform built on the PHP scripting language and using a MySQL database.
The CMS platform is an application that creates websites and manages their content. The platform dynamically generates HTML code on web pages.
One of the most important benefits of the platform is that it allows you to easily edit web pages without having to understand HTML code. An intuitive content editor is used for this purpose.
An example of such an editor and the easy creation of web pages with it is the block editor of WordPress. The individual components of the page are separate blocks that we line up like Tetris.
To create a website with a CMS platform, we can install it on a server that is connected to the Internet. In this way, the site created by us will become accessible to anyone on the web. The most used servers for this purpose are hosting servers, which are the main component of hosting services.
2. Host (ing)
A host is a computer that has programs or data that other computers (clients) can access over the network (local or Internet). Special computers or Internet hosts provide (serve) services are also called servers. Depending on the data or service they host, they can be called a hosting server, file server, gaming server, streaming server and others.
A hosting server is a specialized server (host) connected to the Internet that provides the environment and resources for the operation of websites. Many utilities such as web server, database server, caching server, mail server and others are installed and running on the hosting server.
Connected to the hosting server:
Server resources – The hosting server has certain resources such as memory, processing power, disk space. These are indicated in the hosting plans of a given service and are called hosting parameters.
Virtual Host – Many virtual hosts can run on a single physical server, such as a shared hosting service. On a physical hosting server, each hosting account is a separate (virtual) host.
Hosting account – Virtually dedicated part of the hosting server. It is an isolated server environment with its own server resources (disk space, memory, etc.). The hosting account belongs to a webmaster, who manages its resources, has files, data, applications, emails in it.
Data center – Entire building and the individual rooms in it, where the hosting servers are located. This center maintains special conditions for storage and protection of machines.
Loading the site in the browser is actually downloading its files from the hosting server. The browser submits a request to the hosting server, which specifies the name of the site and which web page it wants. The web server program works on the hosting server, which serves the clients’ requests. The web server receives the request and first checks to see if there is content for that name located on the hosting server. The file-name link is stored in the web server settings.
Connected to the web server:
Site Main Directory (DocumentRoot) – This is the directory specified in the web server configuration in which the site content is located. For a shared hosting service, the directory is called public_html. If you want a resource to be found on the web, you will upload it to this directory. If you do not want it to be detectable, you will place it in the above directory.
.htaccess – This is the configuration file of the Apache web server. It sets directives to set the behavior of the web server when receiving / sending a request. For example, to redirect from one address to another, to deny access to a particular resource and others.
HTTP status codes – When the web server does not find the requested resource or another unforeseen situation occurs that prevents it from providing the requested resource, it sends a notification to the browser in the form of a status message. For example, for each successful discovery of a requested resource, the web server tells the browser that it was successful in finding it by sending it a status code of 200. If it is denied access to a resource, the web server returns a status code of 403. Status codes help dealing with cases when loading sites.
Offering a hosting server equipped with a web server and other necessary programs and technologies for websites for use for a fee is called a web hosting service (or more often just hosting).
Shared hosting is a service that provides a web hosting server that hosts websites.
Related to web hosting:
Hosting – Means using the service of a server. For example, hosting a website means that its files are on the server and that the site is running on that server.
Hosting Provider – Any company that offers hosting services.
Types of Web Hosting – There are different types of web hosting such as shared hosting, WordPress hosting, Managed VPS, VPS and others.
Hosting Plan – Different types of hosting services are offered in different hosting plans. The main difference, in addition to the values of their parameters, are the additional tools and functionalities that you receive to improve the overall performance of your site – acceleration tools, SPAM protections and more.
cPanel – This is the control hosting panel, through which the content and settings of the hosting account are managed.
Softaculous – A library of applications through which you can install many different CMS platforms and libraries in several different programming languages.
Logs – Logs are records of actions performed such as site visits (raw access log) or generated error messages in the operation of scripts (error_log) and others. The logs for the operation of the web server and PHP are used for analysis and investigation of a case with the operation of the site.
FTP – Client-server network protocol providing the ability to exchange files between different computer systems.
SSH (Secure Shell) – Secure Shell is a network protocol used for secure connection and access to the shell on a remote machine. It is mainly used by system administrators to manage and configure server systems.