* Web Servers/Clients * The HTTP Protocol

Slides:



Advertisements
Similar presentations
An Introduction to the Internet and the Web Frank McCown COMP 250 – Internet Development Harding University.
Advertisements

4.01 How Web Pages Work.
The Client-Server Model for the Web 1. A Web Client (usually in the form of a web browser) makes an HTTP request to a specific web server. 2. The Web Server.
1 * The World Wide Web * HTML Basics Internet 1: The World Wide Web.
Topics in this presentation: The Web and how it works Difference between Web pages and web sites Web browsers and Web servers HTML purpose and structure.
Introduction 2: Internet, Intranet, and Extranet J394 – Perancangan Situs Web Program Sudi Manajemen Universitas Bina Nusantara.
HTTP Overview Vijayan Sugumaran School of Business Administration Oakland University.
1 The World Wide Web. 2  Web Fundamentals  Pages are defined by the Hypertext Markup Language (HTML) and contain text, graphics, audio, video and software.
Web Page Design I Basic Computer Terms “How the Internet & the World Wide Web (www) Works”
HOW WEB SERVER WORKS? By- PUSHPENDU MONDAL RAJAT CHAUHAN RAHUL YADAV RANJIT MEENA RAHUL TYAGI.
Objective Understand concepts used to web-based digital media. Course Weight : 5%
1 Welcome to CSC 301 Web Programming Charles Frank.
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
27.1 Chapter 27 WWW and HTTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
Website Design, Development and Maintenance ONLY TAKE DOWN NOTES ON INDICATED SLIDES.
Microsoft Office 2008 for Mac – Illustrated Unit D: Getting Started with Safari.
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 What is the Internet? The Internet is a lot of computers over the whole world connected together so that they can share information. It.
CSE541: Web Applications Special Thanks to M. Abdur Rahman.
Web Page Design The Basics. The Web Page A document (file) created using the HTML scripting language. A document (file) created using the HTML scripting.
Computer Basics Introduction CIS 109 Columbia College.
1 ** THE INTERNET ** Large, worldwide collection of networks that use a common protocol to communicate with each other A network of networks.
Understanding FTP File Transfer Protocol. Learning Objectives By the end of this lecture, you should be able to: – Describe the purpose of FTP – Install.
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.
The World Wide Web.
Getting Started With HTML
Introduction to the Internet
4.01 How Web Pages Work.
* Web Servers/Clients * The HTTP Protocol
4.01 How Web Pages Work.
Chapter 10: Web Basics.
IS1500: Introduction to Web Development
Tiny http client and server
Lecture #1: * The World Wide Web * HTML Basics
Section 6.3 Server-side Scripting
Instructor: Ahmed Jafer
Web Concepts Lesson 2 ITBS2203 E-Commerce for IT.
Technologies and Applications
JavaScript and Ajax (Internet Background)
Web Development Web Servers.
Data Virtualization Tutorial… CORS and CIS
Warm Handshake with Websites, Servers and Web Servers:
CNIT 131 Internet Basics & Beginning HTML
Pre-Coding Web Design – Sec 3-1
Web Languages What Is a Web Page?
Browsing and Searching the Web
E-commerce | WWW World Wide Web - Concepts
E-commerce | WWW World Wide Web - Concepts
CASE STUDY -HTML,URLs,HTTP
Web Caching? Web Caching:.
Web Development & Design Chapter 1, Sections 4, 5 & 6
Wednesday, September 19, 2018 What Is the Internet?
Tutorial (4): HTTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
IS333D: MULTI-TIER APPLICATION DEVELOPMENT
Web Languages What Is a Web Page?
Topic 5: Communication and the Internet
browser search engine web page
What is the World Wide Web (www)
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
Web Page Concept and Design :
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
HyperText Transfer Protocol
Part of Chapter 1 Key Concepts Networks
4.01 How Web Pages Work.
4.01 How Web Pages Work.
The Internet and Electronic mail
File Transfer Protocol
Getting Started With Web Page Creation Using HTML
Presentation transcript:

* Web Servers/Clients * The HTTP Protocol IT 130 – Internet and the Web Joseph (Yosef) Mendelsohn * Web Servers/Clients * The HTTP Protocol

Learning Objectives Understand and be able to explain: The purpose of an HTTP (i.e. web) server and client. What is meant by a protocol in terms of the world wide web. Explain where HTTP requests and HTTP responses are generated, and list at least 2 important pieces of information that they contain. The basics of the process that occurs when a web client requests a resource from a web server. The breakdown of a URL (web address).

Requesting a page - Overview A web client (usually in the form of a web browser) requests some kind of resource (e.g. a web document) from a specific web server. The web server, a computer connected to the internet running web server software, receives the request and sends back the requested resource which is usually – though not always -- an HTML document (i.e. a web page). The web client examines the returned object. If the resource is an HTML document, the client parses the file and renders (displays) it on the screen. If the resource is a file that the browser “understands” (jpeg images, gif images, mp4 videos, etc.), the client will play/display the resource. If the resource is a type of file that the client is unable to recognize (e.g. an Excel spreadsheet), the client will offer the option of saving it to your computer, or to open it in its native application (e.g. Microsoft Excel).

Requesting a Resource: Overview

The Protocol: HTTP Stands for “hypertext transfer protocol” (You don’t need to memorize this!) A protocol is a series of rules and standards that are agreed to by a committee or organization. For the web, HTTP is the protocol used that enables effective communication between web clients and web servers.

HTTP Client Nearly always a web browser – but does not have to be! Software that is used to: generate HTTP requests send those requests to an HTTP server interpret the HTTP response that is provided by the server From Wikipedia: An HTTP client uses HTTP to connect to a web server over the Internet to transfer documents or other data. The most well known types of HTTP Clients include web browsers. Examples: Firefox, Safari, Chrome, etc.

HTTP Server This is software (a program). It is not a computer. However, you do need a computer to run the http server software! That being said, because the computer running the server software is typically dedicated exclusively to that task, we frequently call the computer the server, even though it is not strictly accurate. HTTP server software is entirely different software than HTTP client software. The web server software: “listens” for incoming requests from HTTP clients “parses” (reads & interprets) that request sends out an http response Typically, this response includes sending a document or other resource back to the web client (aka ‘http client’) Examples of http server software include Apache HTTP Server, Oracle HTTP Server, Microsoft Internet Information Services.

Overview: How to set up a web server Have a computer to act as a web server with a large enough hard-drive to store all the resources (HTML documents, images, videos, PDF files, etc, etc) that you wish to make available on the web. Ensure your computer is connected to the internet. Install web server software (e.g. Apache HTTP Server). Configure the web server (takes a little bit of know-how) Upload all of the resources you wish to make available to the web server. This requires use of a file transfer protocol which we will learn about a little bit later.

The Server Computer Have a computer that will act as your web server. I.e. A computer that is running web server software and that has all of the resources you wish to make available stored on a connected hard drive or database. The busier the site, the more powerful the computer(s). A server can be as simple as your desktop/laptop – again, provided that you have installed web server software on to it. Very large, and busy sites (e.g. Google, Microsoft) will have multiple redundant computers running server software all over the world.

The Server Software Software that is constantly running (24x7) and patiently listening for incoming HTTP requests. Once a request from a web client comes in, the server interprets ("parses") the request, and responds by sending back an HTTP response along with the requested resource (if available). The resource might be a web page (html document), video, PDF, Amazon product search, etc, etc. Several software companies publish web server software Some of the better known server software programs include: Apache HTTP Server Microsoft IIS (Internet Information Services)

Client sends a request to the server. Server sends a response back to the client.

The Request/Response Process

The HTTP Request object When you type a URL, say, for the syllabus of this course, your HTTP client (browser) creates something called an ‘HTTP request object’. This request from the web client sitting in front of you is then routed (via a process we will not discuss here) over the internet to the appropriate HTTP server that was specified in your request. For the class web page, this server lives somewhere in downtown Chicago The HTTP request contains all kinds of information that the server may need to know: The name of the resource being requested The time the request was made The “return address” (the internet address of the http client) The type/name of the http client (e.g. Pocket Safari for iPhone) etc.

Example of an http request header I would like to retrieve the file first_template.html from the course web page. The URL to this file is: http://condor.depaul.edu/ymendels/130/first_template.html The name of this web server is condor The web server lives in a domain called depaul.edu The resource is stored in a folder called ymendels and is inside a subfolder called 130 The requested resource is called first_template.html When I type the URL into my client, the client generates an HTTP request object. Part of this object is shown here:

The HTTP Response object Once the server has received and parsed the http request, it answers by generating an http response. This response includes: A status line: e.g. ‘OK’ or ‘ERROR-404’ A header with information such as the type of document being returned (JPG, MPG, HTML, etc.) The response object is packaged with the resource that was requested. This resource is commonly, but by no means always an ‘html’ document It can be other things such as an image, a request for a video on You Tube, etc.

The HTTP Response Object and Resource This is what is sent from the server back to the client:

404 Error If the web server is unable to find the requested resource, it will generate a message with the error code 404 indicating that there was an error and that the request could not be fulfilled. The error may say something like “HTTP 404” or “Error 404” or something similar. The exact message printed when a 404 error is generated can be set by configuring the web server software. A common way to encounter a 404 error is when there is a typo in the URL: https://condor.depaul.edu/ymendels/1300/web_server_clients.pptx Note the extra ‘0’ in '1300'

Anatomy of a URL The request finds its way to the depaul.edu domain http://condor.depaul.edu/ymendels/130/intro_to_html1.pptx The request finds its way to the depaul.edu domain Within the domain, the request is navigated to a specific server named condor On the condor server, look for a folder called ymendels Within the folder ymendels, look for a subfolder called 130 Within that folder, look for a file called intro_to_html1.pptx