How
Does a Web Server Work?
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.
Article by : Avahost
|