What is a website? What makes a website? And how does it work?
By Chris David
You go to your computer, open a browser and type a website name. Within seconds or less, a fast website will show on your screen. An entire world of websites is at your fingertips. It seems so simple. But there are millions of lines of computer code, wires, Wi-Fi, and almost-innumerable computer chips and components that make this work.
The structure of websites and the internet is so complex that I find it incredible that it works as well as it does. The reliability and speed of internet websites is a testament to human ingenuity.
Let’s break down exactly what a website is and how the information gets to you across perhaps thousands of miles.
A server is a computer, just like the computer under your desk, but specially designed to fit with other servers in an efficient, space-saving configuration. Servers stack in racks so that dozens, and hundreds, can fit together easily. When engineers place many such systems together and connect them with each other, and with the internet, this makes what we call a data center, or server “farm”.
Server farms store the data for all the internet’s largest and most important websites. Servers hold data on hard drives and solid state drives. Data centers and server farms are extremely costly to run and have huge requirements for cooling and electricity.
The computing power for servers and server farms is massive, but the underlying technology of a server is the same as a basic desktop computer.
The domain of a website is the website name. (like example.com) The domain identifies a server (or server farm) on the internet. But this domain name exists merely for convenience. To get information from a server, your computer also needs an address.
In the early days of the internet, engineers designed a domain name system (DNS) that translates the commonly-known domain name to a unique number address (a public IP address). When you type a domain name into your computer browser, the domain name system turns the domain into the IP address.
Then your computer attempts a connection to the IP address for the corresponding server or server farm.
Note that you might hear many different names for a domain: a hostname, a host, a URL, FQDN or an internet address. These all have specific meanings in their technical context, but otherwise will mean the same thing.
Imagine a spiderweb of wires, cables, fiberoptic and even wireless signals. This web is what we call the public internet. Your connection to a web server, via a domain name, goes out through this spiderweb of physical connections, transmitted as ones and zeros. The transmission can be electricity (wires), radio (Wi-Fi) or light (fiberoptic). (or a combination of these)
The server or server farm responds to your request and sends a response. The data response travels as ones and zeros across the public internet connections and back to you, forming the web page you see on your screen.
What data does the server send to your computer as a response? The server hosting the website can send what we call static files. These files are stored physically as ones and zeros on the server hard drives and do not change often. Static files typically take the format of HTML (hypertext markup language).
Hypertext markup language (HTML) is the first building block of a web site. The pages and sites you see on your screen can contain many elements, but everything is built around an HTML page. Your computer browser understands how to receive and display pages crafted with the specific format of HTML.
As opposed to static files, a web server can also send a dynamically generated response. A dynamic response changes based on many factors, like the current user, the user location, information from a database, previous visits to the site, the time of day and more.
Using this info, computer code creates a unique response in HTML format and sends the response (the page) back to you.
Nearly all modern websites, even the most basic blogs and pages, use a database to store information. The database can hold all sorts of information, like usernames, logins, pages, text, products, customers, etc. The coding of a website combines information from a database with HTML formatting and sends a dynamic response.
Images and everything else
HTML pages are the building block, but they wouldn’t look very impressive without images, colors, fonts, scripts and styles. In addition to static pages and dynamic responses, a web server will link images and styling elements and scripting to provide specific functionality and experiences to their visitors.
Internet websites are some of the most complex, most complicated structures that humans have built thus far. Using a vast, interconnected network of wires, cables and radio signals, banks of computer servers respond to requests. The servers generate pages in HTML format and send them back to you.
The HTML pages of a website can contain dynamic content, images, scripts, styling, colors and fonts to give the visitor a rich experience. Databases behind the scenes contain huge datasets on customers and visitors. Special coding puts it all together.