WEB SERVER
What is a web server?
A web server is an application, allowing users to share documents over internet or a local network.
To connect to the web server you need only a web browser.
Many clients connecting to a web server.
This image shows, how various clients can be
connected with your server at the same time. The request arrives at
your server via the network. A response is prepared by the server and
is sent back to the client. The evolution of the Internet, made the
Server-Client model the simpliest mode to share information easily,
giving the possiblity to each user, to decide what he or she wants to
share with other users.
How are the files shared?
Using the basic level, the web server shares HTML
documents and images. These documents and images are very simple,
static and the basic files, you see when you access a website.
These files are transferred via the HTTP (HyperText Transfer Protocol).
If dynamic content is needed, for example to run an e-commerce website,
different protocols are used for the communication of the web server
with an external process. Some of these protocols are the Common
Gateway Interface (CGI), ISAPI, FastCGI and WinCGI.
HTTP is not a secure protocol, because the data transmission is not
encrypted. The encryption possibilities for secure transmissions are
given by the HTTPS (HyperText Transfer Procol Secure). More about the
HTTPS here.
Path translation
Web servers translate the path component of an URI into a local file
system resource. The URI path specified by the client is relative to
the web server's root directory (Virtual
Hosts). For example the client can request a
file /mydirectory/myfile through a request
like:
GET /mydirectory/myfile HTTP/1.1
Host: www.host.com
The server maps the file name to the current virtual host root
directory. If the root directory is /var/www
the returned resource will
be /var/www/mydirectory/myfile according to
the specification for its MIME type.