Web servers


Published on

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Web servers

  1. 1. Web Servers Sudan University for Science and Technology College of graduate studies Msc in Computer SciencePresented byMohamed Zeinelabdeen Abdelgader 1
  2. 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 2
  3. 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 3
  4. 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. 4
  5. 5. Platform Neutrality of the Web Lets different types of computers, running different operating systems, communicate 5
  6. 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 6
  7. 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) 7
  8. 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 8
  9. 9. Message Flows in a Two-TierClient/Server 9
  10. 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 10
  11. 11. Three-Tier or N-Tier Client/ServerArchitectures 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 11
  12. 12. Message Flows in a Three-Tier Client/Server Client tier Middle tier Information tier 12
  13. 13. Request methods (GET)The get request sends form content as part of the URL . 13
  14. 14. Request methods (POST)The data sent in a post request are not part of the URL and cannot beseen by the user. 14
  15. 15. Accessing web servers Must know host name on which web server resides Remote web servers accessed using Protocol Domain name Page name • URL: http://www.dtl.com/default.asp • OR IP address Local web servers (on same machine) accessed using machine name or localhost 15
  16. 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; 16
  17. 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 17
  18. 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 18
  19. 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 19
  20. 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 20
  21. 21. Selecting a web server Various criteria Performance Reliabilitye.g. how many client requests How robust is the web server? per second can be How liable to crash? How easily processed? Load balancing? recovered? Support Ease of Use What support is How easy to set up , provided by the administer, learn? vendor? 21
  22. 22. Selecting a web server (cont.) Price Security How must does it cost to What security functionality buy and maintain? is offered? e.g. Secure Sockets Layer SSL?Functionality•server side techologies supported? Operating systeme.g. ASP? JSP? etc What operating system(s) does the web server support? 22
  23. 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). 23
  24. 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_demys http://www.w3.org/Servers.html http://en.wikipedia.org/wiki/Web_server 24
  25. 25. 25
  26. 26. 26