1 Web Server Concepts Dr. Awad Khalil Computer Science Department AUC.

Slides:



Advertisements
Similar presentations
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 22 World Wide Web and HTTP.
Advertisements

DT228/3 Web Development WWW and Client server model.
Session 13 Active Server Pages (ASP) Matakuliah: M0114/Web Based Programming Tahun: 2005 Versi: 5.
 2004 Prentice Hall, Inc. All rights reserved. Chapter 21 – Web Servers (IIS and Apache) Outline 21.1 Introduction 21.2 HTTP Request Types 21.3 System.
 2003 Prentice Hall, Inc. All rights reserved. Chapter 21 – Web Servers (IIS and Apache) Outline 21.1 Introduction 21.2 HTTP Request Types 21.3 System.
DT211/3 Internet Application Development Active Server Pages & IIS Web server.
Server-Side vs. Client-Side Scripting Languages
DT211/3 Internet Development Application Web Servers.
The Internet Useful Definitions and Concepts About the Internet.
Web Servers How do our requests for resources on the Internet get handled? Can they be located anywhere? Global?
 2002 Prentice Hall. All rights reserved. 1 Chapter 6 – Introduction to the Common Gateway Interface (CGI) Outline 6.1 Introduction 6.2 Client and Web.
Outline IS400: Development of Business Applications on the Internet Fall 2004 Instructor: Dr. Boris Jukic Server Side Web Technologies: Part 2.
 2008 Pearson Education, Inc. All rights reserved Web Servers (IIS and Apache)
CP476 Internet Computing Browser and Web Server 1 Web Browsers A client software program that allows you to access and view Web pages on the Internet –Examples.
Web Client/Server Communication A290/A590, Fall /09/2014.
Christopher M. Pascucci Basic Structural Concepts of.NET Browser – Server Interaction.
17 Web Servers (Apache and IIS)
1 Web Servers (IIS and Apache) Outline 9.1 Introduction 9.2 HTTP Request Types 9.3 System Architecture 9.4 Client-Side Scripting versus Server-Side Scripting.
1 Web Developer & Design Foundations with XHTML Chapter 6 Key Concepts.
CSCI 323 – Web Development Chapter 1 - Setting the Scene We’re going to move through the first few chapters pretty quick since they are a review for most.
INTRODUCTION TO WEB DATABASE PROGRAMMING
Computer Concepts 2014 Chapter 7 The Web and .
Copyright © Texas Education Agency, All rights reserved.1 Web Technologies Web Administration.
 2000 Deitel & Associates, Inc. All rights reserved. Chapter 24 – Web Servers (PWS, IIS, Apache, Jigsaw) Outline 24.1Introduction 24.2Microsoft Personal.
T U T O R I A L  2009 Pearson Education, Inc. All rights reserved Bookstore Web Application Introducing Visual Web Developer 2008 Express and the.
© Copyright by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Outline 29.1 Multi-Tier Architecture 29.2 Web Servers.
Web Servers1-1 Web Servers Xingquan (Hill) Zhu
Introduction to ASP.NET. Prehistory of ASP.NET Original Internet – text based WWW – static graphical content  HTML (client-side) Need for interactive.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
Comp2513 Forms and CGI Server Applications Daniel L. Silver, Ph.D.
Chapter 1: Introduction to Web
Basics of Web Databases With the advent of Web database technology, Web pages are no longer static, but dynamic with connection to a back-end database.
DATA COMMUNICATION DONE BY: ALVIN SAMPATH CARLVIN SAMPATH.
2013Dr. Ali Rodan 1 Handout 1 Fundamentals of the Internet.
5 Chapter Five Web Servers. 5 Chapter Objectives Learn about the Microsoft Personal Web Server Software Learn how to improve Web site performance Learn.
Web Page Design I Basic Computer Terms “How the Internet & the World Wide Web (www) Works”
 2001 Prentice Hall, Inc. All rights reserved. 1 Chapter 21 - Web Servers (IIS, PWS and Apache) Outline 21.1 Introduction 21.2 HTTP Request Types 21.3.
Chapter 1: The Internet and the WWW CIS 275—Web Application Development for Business I.
Database-Driven Web Sites, Second Edition1 Chapter 5 WEB SERVERS.
ASP Introduction Y.-H. Chen International College Ming-Chuan University Fall, 2004.
Web Engineering we define Web Engineering as follows: 1) Web Engineering is the application of systematic and proven approaches (concepts, methods, techniques,
MySQL and PHP Internet and WWW. Computer Basics A Single Computer.
 2004 Prentice Hall, Inc. All rights reserved. 1 Segment – 6 Web Server & database.
Web Pages with Features. Features on Web Pages Interactive Pages –Shows current date, get server’s IP, interactive quizzes Processing Forms –Serach a.
Active Server Pages  In this chapter, you will learn:  How browsers and servers interacted on the Internet when the Internet first became popular 
Chapter 8 Collecting Data with Forms. Chapter 8 Lessons Introduction 1.Plan and create a form 2.Edit and format a form 3.Work with form objects 4.Test.
Kingdom of Saudi Arabia Ministry of Higher Education Al-Imam Muhammad Ibn Saud Islamic University College of Computer and Information Sciences Chapter.
1 Welcome to CSC 301 Web Programming Charles Frank.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
1 Web Servers (Chapter 21 – Pages( ) Outline 21.1 Introduction 21.2 HTTP Request Types 21.3 System Architecture.
Internet & World Wide Web How to Program, 5/e. © by Pearson Education, Inc. All Rights Reserved.2 Revised by Dr. T. Tran for CSI3140.
 2008 Pearson Education, Inc. All rights reserved. Chapter 17 Web Servers (Apache and IIS) Internet & World Wide Web How to Program, 5/e.
Web Design and Development. World Wide Web  World Wide Web (WWW or W3), collection of globally distributed text and multimedia documents and files 
Introduction and Principles Web Server Scripting.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
ASP-2-1 SERVER AND CLIENT SIDE SCRITPING Colorado Technical University IT420 Tim Peterson.
JavaScript and Ajax (Internet Background) Week 1 Web site:
Copyright © 2011 Pearson Addison-Wesley Web Servers and Projects Deployment Chapter 11 – Slide 1.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 22 World Wide Web and HTTP.
6/28/ A global mesh of interconnected networks (internetworks) meets these human communication needs. Some of these interconnected networks are.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
Web Technology Seminar
JavaScript and Ajax (Internet Background)
Web Development Web Servers.
IS333D: MULTI-TIER APPLICATION DEVELOPMENT
17 Web Servers (Apache and IIS)
PHP and Forms.
17 Web Servers (Apache and IIS)
Web Servers (IIS and Apache)
Presentation transcript:

1 Web Server Concepts Dr. Awad Khalil Computer Science Department AUC

2 Web Servers (IIS, PWS and Apache) Outline 1. Introduction 2. HTTP Request Types 3. System Architecture 4. Client-Side Scripting versus Server-Side Scripting 5. Accessing Web Servers 6. Microsoft Internet Information Services (IIS) 7. Microsoft Personal Web Server (PWS) 8. Apache Web Server 9. Requesting Documents XHTML ASP Perl Python PHP

3 Introduction Web server –Specialized software that responds to client requests by providing resources –When users enter URL into Web browsers, they request specific documents from Web server –Maps URL to file on server and returns requested document to client –Communicates with client using HTTP Protocol for transferring requests and files over the Internet Introduce three Web servers (Fig.1) –Internet Information Services (IIS), Personal Web Server (PWS) and Apache Web Server

4 Introduction

5 HTTP Request Types Also known as request methods Most popular are get and post –Retrieve and send client form data to Web server –get request Sends form content as part of URL Retrieves appropriate resource from Web server Limits query to 1024 characters –post request Updates contents of Web server (posting new messages to forum) Has no limit for length of query Not part of URL and cannot be seen by user

6 HTTP Request Types (Cont’d) Posts data to server-side form handler Browsers cache (save on disk) Web pages –Allows for quick reloading –Cache responses to get request –Do not cache responses to post request

7 System Architecture Web server part of multi-tier application –Divide functionality into separate tiers Logical groupings of functionality Can reside on same computer or on different computers Following diagrams illustrates 3-tier application

8 System Architecture (Cont’d) Fig. 2Three-tier application model.

9 System Architecture (Cont’d) Information tier –Referred to as data tier or bottom tier –Maintains data for application –Stores data in relational database management system Middle tier –Implements business logic and presentation logic –Controls interactions between application clients and application data –Acts as intermediary between data in information tier and application clients

10 System Architecture (Cont’d) Middle tier, cont. –Controller logic Processes client requests from top tier Retrieves data from database –Presentation logic Processes data from information tier Presents content to client –Business logic Enforces business rules –Dictates how clients can access application data and how applications process data Ensures data validity before updating database

11 System Architecture (Cont’d) Client tier –Referred to as top tier –Application’s user interface –Users interact with application through user interface –Interacts with middle tier to make requests and to retrieve data from information tier –Displays data to user

12 Client-Side Scripting versus Server-Side Scripting Client-side scripting –Validates user input –Accesses the browser –Enhances Web pages with ActiveX® controls, applets, etc. –Manipulates browser documents Client-side validation –Reduces number of requests that need to be passed to server Client-side scripting limitations –Browser dependency –Viewable to users through View Source command JavaScript most popular client-side script

13 Client-Side Scripting versus Server-Side Scripting (Cont’d) Server-side scripts –Provides programmers greater flexibility –Generates custom responses for clients –Contains greater programmatic capabilities than client-side equivalents –Has access to server-side software that extend server functionality

14 Accessing Web Servers Requesting documents –Must know machine name on which Web server resides –Through local Web servers or remote Web servers –Through domain name or Internet Protocol (IP) address Local Web server –Resides on users’ machines –Requests documents in two ways Machine name localhost –Host name that references local machine

15 Accessing Web Servers (Cont’d) Remote Web server –Resides on different machines Domain name –Represents group of hosts on Internet –Combines with how name ( www ) and top-level domain to from fully qualified host name Top-level domain (TLD) –Describes type of organization that owns domain name.com or.org Fully qualified host name –Provides user friendly way to identify site on Internet

16 Accessing Web Servers (Cont’d) IP address –Unique address for locating computers on Internet Domain name server (DNS) –Maintains database of host names and corresponding IP addresses –Translates fully qualified host name to IP address Known as DNS lookup

17 Microsoft Internet Information Services (IIS) IIS 5.1 –Enterprise-level Web server –Included with Windows 2000 & Windows XP –Allows computer to serve documents Internet Services Manager (Fig. 3) –Open Control Panel, double click Administrative Tools icon, then double click Internet Services Manager icon –Administration program for IIS –Place documents to be requested in default directory or virtual directory Default: C:\Inetpub\Wwwroot Virtual: alias for existing directory on local machine

18 Microsoft Internet Information Services (IIS) Fig. 3 Internet Services Manager dialog.

19 Microsoft Internet Information Services (IIS) Default FTP Site and Default Web Site –Permit transferring documents between computer and server –HTTP used frequently to request documents Default SMTP Virtual Server –Allows for creation of mail server Create virtual directory in Default Web Site –Most Web documents reside in Webpub directory Right click Webpub, select New, then Virtual Directory Initiates Virtual Directory Creation Wizard (Fig. 4) –Guides user through virtual directory creation process

20 Microsoft Internet Information Services (IIS) Fig. 4 Virtual Directory Creation Wizard welcome dialog.

21 Microsoft Internet Information Services (IIS) Virtual Directory Alias (Fig. 5) –Enter name for virtual directory Name should not conflict with an existing virtual directory Web Site Content Directory (Fig. 6) –Enter path of directory containing Web documents Access Permissions (Fig. 7) –Presents security level choices –Select access level appropriate for Web document

22 Microsoft Internet Information Services (IIS) Fig. 5 Virtual Directory Alias dialog.

23 Microsoft Internet Information Services (IIS) Fig. 6 Web Site Content Directory dialog.

24 Microsoft Internet Information Services (IIS) Access Permissions (Fig. 7) –Presents security level choices –Select access level appropriate for Web document –Read allows users to read and download files –Run Scripts allows scripts to run in directory –Execute allows applications to run in directory –Write allows Web page to accept user input –Browse allows users to navigate between documents –Read and Run Scripts selected by default

25 Microsoft Internet Information Services (IIS) Fig. 7 Access Permissions dialog.

26 Microsoft Personal Web Server (PWS) PWS –Scaled-down version of IIS –Intended for personal computers (PC) –Ideal for educational institutions, small businesses and individuals –Does not require PC to be used exclusively as Web server Personal Web Manager (Fig. 8) –Administration program for PWS –Place documents to be requested in default directory or virtual directory Default: C:\Inetpub\Wwwroot Virtual: alias for existing directory on local machine

27 Microsoft Personal Web Server (PWS) Fig. 8 Personal Web Manager dialog.

28 Microsoft Personal Web Server (PWS) Edit Directory (Fig. 9) –Directory field Enter directory path that contains Web documents –Alias field Enter name to virtual directory –Access section Select security level for virtual directory Read allows users to read and download files Execute allows applications to run in directory Scripts allows scripts to run in directory Read and Scripts selected by default

29 Microsoft Personal Web Server (PWS) Fig. 9Creating a virtual directory in PWS in Edit Directory.

30 Apache Web Server Apache –Maintained by Apache Software Foundation –Currently most popular Web server Stable Efficient Portable –Successively select Start, Programs, Apache httpd Server, Control Apache Server and Start (Fig. 10)

31 Apache Web Server Fig. 10Starting the Apache Web server. (Courtesy of The Apache Software Foundation.)

32 Requesting Documents Demonstrate requesting five different documents –XHTML, Active Server Pages (ASP), Perl, Python and PHP –Discuss serving these documents using IIS, PWS and Apache

33 XHTML IIS, PWS and Apache support XHTML IIS or PWS –Copy test.html into directory that references virtual directory –Launch Internet Explorer and enter XHTML document’s location in Address field (Figs. 11 and 12) Apache –Copy test.html to htdocs directory (default directory) –Launch Internet Explorer and enter XHTML document’s location in Address field (Fig. 13)

34 XHTML Fig Requesting test.html from IIS. Fig. 12Requesting test.html from PWS. Notice different URL’s in Address field localhost references local machine For IIS, we created virtual directory in Webpub directory

35 XHTML Fig..13Requesting test.html from Apache. Since htdocs is the default directory, we do not need to enter directory name in URL

36 ASP IIS and PWS support ASP documents IIS and PWS –Copy test.asp into directory that references virtual directory –Launch Internet Explorer and enter ASP document’s locations in Address field (Figs. 14 and 15) Apache –Does not support ASP documents

37 ASP Fig. 14Requesting test.asp from IIS. Fig. 15Requesting test.asp from PWS.

38 Perl IIS, PWS and Apache support Perl documents IIS and PWS –Copy test.pl into directory that references virtual directory –Launch Internet Explorer and enter Perl document’s location in Address field (Figs. 16 and 17) Apache –Copy test.pl to cgi-bin directory Perl documents must reside in this directory –Launch Internet Explorer and enter Perl document’s location in Address field (Fig. 18)

39 Perl Fig. 16Requesting test.pl from IIS. Fig. 17Requesting test.pl from PWS.

40 Perl Fig. 18Requesting test.pl from Apache. cgi-bin is required in URL; it is not default directory

41 Python IIS, PWS and Apache support Python documents IIS and PWS –Copy test.py into directory that references virtual directory –Launch Internet Explorer and enter Python document’s location in Address field (Figs. 19 and 20) Apache –Copy test.py to cgi-bin directory Python documents must reside in this directory –Launch Internet Explorer and enter Python document’s location in Address field (Fig. 21)

42 Python Fig. 19Requesting test.py from IIS. Fig. 20Requesting test.py from PWS.

43 Python Fig. 21Requesting test.py from Apache.

44 PHP IIS, PWS and Apache support PHP documents IIS and PWS –Copy test.php into directory that references virtual directory –Launch Internet Explorer and enter PHP document’s location in Address field (Figs. 22 and 23) Apache –Copy test.php to htdocs directory –Launch Internet Explorer and enter PHP document’s location in Address field (Fig. 24)

45 PHP Fig. 22Requesting test.php from IIS. Fig. 23Requesting test.php from PWS.

46 PHP Fig. 24Requesting test.php from Apache.