Date post: | 17-Jun-2015 |
Category: |
Technology |
Upload: | mohamed-zeinelabdeen-abdelgader-farh-jber |
View: | 747 times |
Download: | 3 times |
1
Web Servers
Presented byMohamed Zeinelabdeen Abdelgader
Sudan University for Science and Technology
College of graduate studiesMsc in Computer Science
2
Presentation Outline
An Over View Web Clients and Web Servers Dynamic & Static Content System Architecture Request methods. Accessing web servers Request Handling Phases Most Famous Web Servers Selecting a web server
3
Various Meanings of “Server” Server
Computer used to provide files or make programs available to other computers
Server software Used by a server computer to make files and programs available
to other computers Many types of server
FTP server : remote file space, often read-only Mail server : email system News server : newsgroups messages
4
Web Clients and Web Servers Client/server architectures
Client computers typically request services
Server processes clients’ requests.
Web server
a computer program that delivers (serves) content, such as web pages, using the Hypertext Transfer Protocol (HTTP), over the World Wide Web.
The term web server can also refer to the computer or virtual machine running the program.
5
Platform Neutrality of the WebLets different types of computers, running different operating systems,
communicate
6
Static & Dynamic Content
Static page
Unchanging page retrieved from server
Dynamic page
Web page whose content is shaped by a program in response to user requests
7
Dynamic Content (cont)
Server-side scripting Programs running on a Web server to create Web pages
before sending them back to the requesting Web clients
Dynamic page-generation technologies Active Server Pages (ASP)
JavaServer Pages (JSP)
Hypertext Preprocessor (PHP)
8
Two-Tier Client/Server Architecture Request message
Message that a Web client sends to request a file or files from a Web server
Typical request message Request line
Optional request headers
Optional entity body
9
Message Flows in a Two-Tier Client/Server
10
Two-Tier Client/Server Architecture (cont)
Request line Contains a command, the name of the target resource, and
the protocol name and version number
Request headers Can contain information about types of files that the client
will accept in response to a request
Entity body Used to pass bulk information to the server
11
Three-Tier or N-Tier Client/Server Architectures
Three-tier architecture
Extends two-tier architecture to allow additional processing
Third tier includes software applications that supply information to the Web server
Sometimes know as N-tier or multi-tier architectures
12
Message Flows in a Three-Tier Client/Server
Client tier Middle tier
Information tier
13
Request methods (GET)
The get request sends form content as part of the URL .
14
Request methods (POST)
The data sent in a post request are not part of the URL and cannot be seen by the user.
15
Accessing web servers
Must know host name on which web server resides
Remote web servers accessed using
• URL: http://www.dtl.com/default.asp
• OR IP address http://207.60.134.230
Local web servers (on same machine) accessed using machine name or localhost
Protocol Domain name
Page name
16
Request Handling Phases
URI to filename translation; Check access based on host address, and other
available information; Get an user id from the HTTP request and validate it; Authorize the user; Determine the Multipurpose Internet Mail Extensions
(MIME) type of the requested object (the content type, the encoding and the language);
Fix-ups (for example replace aliases by the actual path); Send the actual data back to the client; Log the request;
17
Most Famous Web Servers
Apache HTTP Server from Apache Software Foundation Internet Information Services (IIS) from Microsoft Sun Java Web Server from Sun Microsystems
Formerly Sun ONE Web Server, iPlanet Web Server, and Netscape Enterprise Server
Zeus Web Server from Zeus Technology
18
Apache HTTP Server
Ongoing group software development effort
Dominated the Web since 1996 because it is free and performs efficiently
Apache
Developed by Rob McCool at the University of Illinois in1994 at the National Center for Supercomputing Applications (NCSA)
Currently available on the Web at no cost as open-source software
19
Microsoft Internet Information Server
Comes bundled with current versions of Microsoft Windows Server operating systems
Used on many corporate intranets
Supports the use of
ASP
ActiveX Data Objects
SQL database queries
20
Sun Java System Web Server (Sun ONE, iPlanet, Netscape) Descendant of the original NCSA Web server program Formerly sold under the names
Sun ONE Netscape Enterprise Server iPlanet Enterprise Server
Charges between $1400 and $5000 for the licensing fee
21
Selecting a web serverVarious criteria
Performance e.g. how many client
requests per second can be processed? Load balancing?
Ease of Use
How easy to set up , administer, learn?
Support
What support is provided by the
vendor?
Reliability
How robust is the web server? How liable to crash? How easily recovered?
22
Selecting a web server (cont.)
Functionality•server side techologies supported?
e.g. ASP? JSP? etc
Price
How must does it cost to
buy and maintain?
Operating system
What operating system(s) does the web server support?
Security
What security functionality
is offered? e.g. Secure Sockets Layer SSL?
23
Conclusion
Web servers respond to client requests by providing resources.
A Web server is part of a multi-tier application. A multi-tier application divides functionality into separate tiers. The three-tier application contains an information tier, a middle tier and a client tier.
The most common HTTP request types are get and post. Selecting a web server depended on (Performance,
Reliability, Support, Functionality, Ease of Use, Price, Security, Operating system).
24
References
Internet & World Wide Web How to Program (4nd Edition)
http://www.serverwatch.com/tutorials/article.php/1363221
http://www.macronimous.com/resources/web_servers_demystifyed.asp
http://www.w3.org/Servers.html http://en.wikipedia.org/wiki/Web_server
25
26