| 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 NT, 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.
|