1
Web Servers
•
How do our requests
for resources on the
Internet get handled?
•
Can they be located
anywhere? Global?
2
Web Servers
•
Looking at ….
–
Introduction to web servers
–
HTTP request types
–
3
-
tier system architecture
–
Accessing a web server (local and remote)
–
Web server examples
•
Apache
•
Tomcat
•
IIS
•
PWS
3
What is a web server?
•
Web server
–
Specialized software that responds to client
requests by providing resources (web pages,
documents, etc..)
–
Based on the client/server model
–
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
4
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
5
HTTP Request Types
•
get
and
post
requests are sent to a server
-
side form handler
•
Client browsers cache (save on disk) Web
pages
–
Allows for quick reloading
–
Cache responses to
get
request
–
Do not cache responses to
post
request
6
System Architecture
•
A web server forms part of a multi
-
tier
application
–
Divide functionality into separate tiers
•
Logical groupings of functionality
•
Can reside on same computer or on different
computers
•
What does a 3
-
tier architecture look like?
–
let’s have a look
7
System Architecture
App lica tion
Mid dle t ier
Inf ormat ion t ie r
Client t ie r
Da ta ba se
8
System Architecture
•
Client tier
–
Referred to as the 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
9
System Architecture
•
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
•
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
Accessing Web Server
•
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
12
Accessing Web Server
•
Remote Web server
–
Resides on different machines
–
Accessing resources on remote web server
requires
•
Domain name
–
Represents group of hosts on Internet
–
Combines with how name (
www
) and top
-
level domain to from
fully qualified host name
•
Fully qualified host name
–
Provides user friendly way to identify site on Internet
•
IP address
–
Unique address for locating computers on Internet
•
DNS (see notes)
13
Examples of Web Servers
•
Apache (Apache group)
•
Tomcat (Apache group)
•
IIS (Microsoft Internet Information
Services)
•
PWS (Microsoft Personal Web Server)
14
Apache web server
•
Apache
–
Maintained by Apache Software Foundation
–
Currently most popular Web server
•
Stable
•
Efficient
•
Portable
•
(got it’s name from the original developers
who called it ‘
a patchy
server’)
15
Apache web server
•
Open source
–
Freely distributed on the Internet
–
Huge amount of end
-
user support
–
Has earned the reputation of being one of the
most reliable web server available
•
Uses server modules to add functionality to
the core HTTP server
–
i.e. extra services that it can provide (e.g.
security authentication)
16
Apache web server
•
To launch Apache, successively select
–
Start, Programs, Apache httpd Server, Control
Apache Server
and
Start
17
Tomcat web server
•
Tomcat
–
Similar to Apache and also maintained by
Apache Software Foundation
–
Fast becoming a popular Web server
–
Built in Servlet container (engine)
–
Requires no add
-
ons to support Servlets
18
Tomcat web server
•
To launch Tomcat, successively select
–
Start, Programs, Apache Tomcat 4.x
and
Start
Tomcat
19
Internet Information Services
(IIS) web server
•
Developed by Microsoft
•
IIS 5.0
–
Enterprise
-
level Web server
–
Included with Windows 2000
–
Allows computer to serve documents
•
Uses an Internet Services Manager to
administrate
–
see diagram
20
Internet Information Services
(IIS) web server
Internet Services Manager
dialog.
21
Personal Web Server (PWS)
•
PWS developed by Microsoft
•
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
–
A Personal Web Manager is used to
administrate it
22
Personal Web Server
Personal Web Manager
dialog.
23
References
•
Check out
–
http://www.apache.org
•
Apache and Tomcat documentation
•
Apache and Tomcat are free to download and install
–
http://www.microsoft.com
•
IIS and PWS documentation
24
Summary
•
We have looked at:
–
Introduction to web servers
–
HTTP request types
–
3
-
tier system architecture
–
Accessing a web server (local and remote)
–
Web server examples
Enter the password to open this PDF file:
File name:
-
File size:
-
Title:
-
Author:
-
Subject:
-
Keywords:
-
Creation Date:
-
Modification Date:
-
Creator:
-
PDF Producer:
-
PDF Version:
-
Page Count:
-
Preparing document for printing…
0%
Σχόλια 0
Συνδεθείτε για να κοινοποιήσετε σχόλιο