You have probably come to this site to find a
company that provides Web servers or Web hosting services. But
do you actually know how these hosting machines work? It's a
good idea to know a little bit about the product or service
you are searching for before you begin your quest.
First, it's important to note that this is a
two-sided story. Web servers are responsible for storing and
exchanging information with other machines. Because of this,
at least two participants are required for each exchange of
information: a client, which requests the information, and a
server, which stores it. Each side also requires a piece of
software to negotiate the exchange of data; in the case of the
client, a browser like Netscape or Internet Explorer is used.
On the server side, however, things are not as
simple. There is a myriad of software options available, but
they all have a similar task: to negotiate data transfers
between clients and servers via HyperText Transfer Protocol,
the communications protocol of the Web. What type of server
software you are able to run depends on the Operating System
chosen for the server. For example, Microsoft Internet
Information Server is a popular choice for Windows 2000, while
many Unix fans choose Apache Web server.
A simple exchange between the client machine
and Web server goes like this:
1. The client's browser dissects the URL in to
a number of separate parts, including address, path name and
protocol.
2. A Domain Name Server (DNS) translates the
domain name the user has entered in to its IP address, a
numeric combination that represents the site's true address on
the Internet (a domain name is merely a "front" to make site
addresses easier to remember).
3. The browser now determines which protocol
(the language client machines use to communicate with servers)
should be used. Examples of protocols include FTP, or File
Transfer Protocol, and HTTP, HyperText Transfer Protocol.
4. The server sends a GET request to the Web
server to retrieve the address it has been given. For example,
when a user types http://www.example.com/1.jpg, the browser
sends a GET 1.jpg command to example.com and waits for a
response. The server now responds to the browser's requests.
It verifies that the given address exists, finds the necessary
files, runs the appropriate scripts, exchanges cookies if
necessary, and returns the results back to the browser. If it
cannot locate the file, the server sends an error message to
the client.
5. The browser translates the data it has been
given in to HTML and displays the results to the user.
This process is repeated until the client
browser leaves the site.
Aside from its functions listed above, the Web
server also has an additional number of responsibilities.
Whereas a Web browser simply translates and displays data it
is fed, a Web server is responsible for distinguishing between
various error and data types. A Web server must, for example,
designate the proper code for any sort of internal error and
send that back to the browser immediately after it occurs. It
also has to distinguish between various elements on a Web page
(such as .GIFs, JPEGS and audio files) so that the browser
knows which files are saved in which format. Depending on the
site's function, a Web server may also have numerous
additional tasks to handle, including logging statistics,
handling security and encryption, serving images for other
sites (for banners, pictures, etc), generating dynamic
content, or managing e-commerce functions.
Now that you've had a behind-the-scenes tour
of a Web server, you can appreciate all the work that goes in
to delivering a single page of content to your computer
screen. Use this knowledge to your advantage, and keep it in
mind when shopping around for your next host. |