Web Development Web Servers.

Slides:



Advertisements
Similar presentations
PowerPoint presentation of first 25 pages of instructional manual Edith Fabiyi Essentials of Internet Access.
Advertisements

DT228/3 Web Development WWW and Client server model.
 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 Development Application Web Servers.
The Web The World Wide Web What does it do?.
Web Servers How do our requests for resources on the Internet get handled? Can they be located anywhere? Global?
Definitions, Definitions, Definitions Lead to Understanding.
Computer Science 101 Web Access to Databases Overview of Web Access to Databases.
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.
IT 210 The Internet & World Wide Web introduction.
Human-Computer Interface Course 5. ISPs and Internet connection.
1 Web Server Concepts Dr. Awad Khalil Computer Science Department AUC.
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.
Chapter 1: Introduction to Web
FTP (File Transfer Protocol) & Telnet
CP476 Internet Computing Lecture 5 : HTTP, WWW and URL 1 Lecture 5. WWW, HTTP and URL Objective: to review the concepts of WWW to understand how HTTP works.
TCP/IP Protocol Suite 1 Chapter 22 Upon completion you will be able to: World Wide Web: HTTP Understand the components of a browser and a server Understand.
Chapter 17 - Deploying Java Applications on the Web1 Chapter 17 Deploying Java Applications on the Web.
 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.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
 2004 Prentice Hall, Inc. All rights reserved. 1 Segment – 6 Web Server & database.
Kingdom of Saudi Arabia Ministry of Higher Education Al-Imam Muhammad Ibn Saud Islamic University College of Computer and Information Sciences Chapter.
NETWORK HARDWARE AND SOFTWARE MR ROSS UNIT 3 IT APPLICATIONS.
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
ECEN “Internet Protocols and Modeling”, Spring 2012 Course Materials: Papers, Reference Texts: Bertsekas/Gallager, Stuber, Stallings, etc Class.
1 Web Servers (Chapter 21 – Pages( ) Outline 21.1 Introduction 21.2 HTTP Request Types 21.3 System Architecture.
Module: Software Engineering of Web Applications Chapter 2: Technologies 1.
Web Services. 2 Internet Collection of physically interconnected computers. Messages decomposed into packets. Packets transmitted from source to destination.
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.
JavaScript and Ajax (Internet Background) Week 1 Web site:
COSC 2328 – Web Programming.  PHP is a server scripting language  It’s widely-used and free  It’s an alternative to Microsoft’s ASP and Ruby  PHP.
The Internet Technological Background. Topic Objectives At the end of this topic, you should be able to do the following: Able to define the Internet.
Web Development & Design Foundations with XHTML Chapter 1 Key Concepts 1.
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.
4.01 How Web Pages Work.
Web and Proxy Server.
4.01 How Web Pages Work.
4.01 How Web Pages Work.
Tiny http client and server
Block 5: An application layer protocol: HTTP
The Intranet.
How HTTP Works Made by Manish Kushwaha.
WWW and HTTP King Fahd University of Petroleum & Minerals
Technologies and Applications
JavaScript and Ajax (Internet Background)
CNIT 131 Internet Basics & Beginning HTML
COMP2322 Lab 2 HTTP Steven Lee Feb. 8, 2017.
E-commerce | WWW World Wide Web - Concepts
Hypertext Transport Protocol
E-commerce | WWW World Wide Web - Concepts
Some bits on how it works
PHP / MySQL Introduction
Web Development & Design Chapter 1, Sections 4, 5 & 6
Tutorial (4): HTTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
IS333D: MULTI-TIER APPLICATION DEVELOPMENT
WEB API.
Chapter 27 WWW and HTTP.
Multimedia and Networks
PHP and Forms.
Part of Chapter 1 Key Concepts Networks
EE 122: HyperText Transfer Protocol (HTTP)
REST APIs Maxwell Furman Department of MIS Fox School of Business
4.01 How Web Pages Work.
Web Servers (IIS and Apache)
The Internet and Electronic mail
Web Application Development Using PHP
* Web Servers/Clients * The HTTP Protocol
Presentation transcript:

Web Development Web Servers

Introduction Web Server Web Browser Client Server A web server is specialised software that responds to client (I.e. web browser) requests Every web site requires a web server to process client requests and ‘serve up’ the pages Web servers used to service Internet, intranets and extranets Note that web server in this context is software. Server machine is also referred to as the web server.

System architecture A web server is part of a multi-tier application (also called n-tier application Functionality is divided into separate tiers or groupings Tiers can be on same computer or on separate computers Web applications are often three tiered: Information tier (also called data tier) Middle tier Client tier (user interface tier)

Common web system architecture Browser Application User interface. The client interacts with the middle tier to make requests and to retrieve data from the information tier Client tier Application tier Controls the interactions between the application clients and application data. Enforces business rules. implements presentation logic. Web server typically supports this tier. Middle tier Database Maintains data for the application. Data typically stores in a relational database management system (RDBMS) Information tier

System Architecture Multi-tier application (n-tier application): Information tier (data or bottom tier) Maintains data for the application Stores data in a relational database management system (RDBMS) Middle tier Implements business logic and presentation logic Control interactions between application clients and application data Client tier (top tier) Application’s user interface Users interact directly with the application through the client tier

Information tier (data or bottom tier) Client tier (top tier) Middle tier

Hyper Text Transfer Protocol Request e.g. “Get me a webpage” “Post this data to the server” Web Browser Web Server Resources: Databases Application Response Server Client e.g. “here’s the web page” Basic function of web server is to act as HTTP server Web servers communicate with clients using a Response-Request protocol: HTTP

Client-Server model and HTTP A request is generated by a client (by browser software) - Most common requests are “Get” and “Post” Request reaches the appropriate web-server Request is processed by the web-server A response is formulated by the web server and sent back to the client (e.g. web page contents)

Client-Server model and HTTP HTTP is the de facto standard for transferring World Wide Web documents Usually to port 80 HTTP messages (requests and responses) between client and server are human readable

Http: Requests from client Get resource Type of browser Name of host etc First line is request-line. Contains the nature of the Request e.g. GET: Get a file from the server POST: Post data to the server PUT: Store some resource

Http: Requests from client: HTML Examples <body> <form method= “post” action =“process.jsp”> Word to look up: <Input type = text Name = “word”> <input types = “submit”> </form> </body> HTML code for a form Indicates a post request Data in form is posted to the server

Http: Requests from client: HTML Examples <body> <form method= “get” action =“process.jsp”> Word to look up: <Input type = text Name = “word”> <input types = “submit”> </form> </body> HTML code for a form Indicates a get request Not usually used for forms Sends any parameters in the query string as www.hostname?name=word& etc

Http: Response from web server 200 = Status code All’s well Type of server Other contents etc HTTP/1.1 200 OK Date: Thu, 22 July 1998 18:40:55 GMT Server: Apache 1.3.5 (Unix) PHP/3.0.6 Last-Modified: Mon, 19 July 1997 16:03:22 GMT Content-Type: text/html Content-Length: 12987 ...

HTTP Response Status Codes 1XX: Provide information to the client 2XX: Correct response has occurred. 3XX: Browser must carry out some further action in order for the request to be successful. For example, the code 301 indicates that the resource that was requested has been permanently moved to another location. 4XX: Something has gone wrong; for example, the most frequent status code that is returned is 404 which indicates that the resource that has been requested cannot be found. 5XX: Server has experienced a problem. For example, the status code 503 indicates that the service requested has not been able to be carried out.

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

web server functionality HTTP Server (at a minimum) But usually includes many other functions such as: File Transfer Protocol (FTP) server Simple Mail Transfer Protocol (SMTP) server (for Email) Web development and publishing functionality Support for specific server side technologies e.g. JSP, SSIs Security features And more

Selecting a web server Various criteria Performance Reliability How robust is the web server? How liable to crash? How easily recovered? Performance e.g. how many client requests per second can be processed? Load balancing? Support What support is provided by the vendor? Ease of Use How easy to set up , administer, learn?

Selecting a web server (cont.) Price How must does it cost to buy and maintain? Security What security functionality is offered? e.g. SSL? Functionality server side techologies supported? (as add-ons? – e.g. TomCat for Apache) e.g. ASP? JSP? CGI? etc Logging Proxy server Operating system What operating system(s) does the web server support?

Proxy servers Proxy server: specific purpose web server: In an enterprise that uses the Internet, the proxy server is like a “buffer” between user computers’ and the Internet. The proxy server sits between the users’ workstations and the Internet so that the enterprise can ensure security and improved performance. It intercepts all requests to the real server to see if it can fulfill the requests itself. If not, it forwards the request to the real server.

Proxy Servers Improved performance - caching reduces external requests (View/Refresh forces external request) Security  filters requests/ firewall

Thanks…