Web Servers (IIS and Apache)
Outline
Introduction
HTTP Request Types
System Architecture
Client-Side Scripting versus Server-Side Scripting
Accessing Web Servers
Web Resources
1
Objectives
● In this lesson, you will learn:
● To understand a Web server’s functionality.
● To introduce Microsoft Internet Information Services
(IIS) and Apache Web server.
● To learn how to request documents from a Web
server.
2
9.1 Introduction
● Web server: Responds to client requests by providing
resources
● URI (Uniform Resource Identifier)
● Web server and client communicate with platform-
independent Hypertext Transfer Protocol (HTTP)
3
Web servers discussed in this chapter.
4
9.2 HTTP Request Types
● get :
● Get (retrieves) information from a server
● i.e: retrieve HTML document or image, fetch
search results
● Sends information as part of URL
● www.search-engine.com/search?name=value
● post:
● Post (sends) data to a server
● i.e: authentication information, form data.
● Sends form data as an HTTP message, not as
part of URL
5
● Browsers often cache (save on disk) Web pages
● Quickly reload the page (speed up browsing experience)
● Browser asks the server if the document has changed or
expired
● If not, the browser loads the document from the cache
6
9.3 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
7
Information tier (data or
Client tier (top tier) Middle tier
bottom tier)
8
9.4 Client-Side Scripting versus Server-Side
Scripting
● Client-side scripts
● Validate user input
● Reduce requests needed to be passed to server
● Access browser
● JavaScipt, VBScript
● Server-side scripts
● Executed on server
● Generate custom response for clients
● Wide range of programmatic capabilities
● Access to server-side software that extends server
functionality 9
9.5 Accessing Web Servers
● Request documents from Web servers
● know the Host names
● Local Web servers
● Access through machine name or localhost
● Remote Web servers
● Access through machine name
● Domain name or Internet Protocol (IP) address
● Domain name server (DNS): Computer that maintains a
database of host names and their corresponding IP address
10
9.6 Web Resources
● www.microsoft.com/msdownload/ntoptionpack/askwiz.asp
● www.w3.org/Protocols
● www.apache.org
● httpd.apache.org
● httpd.apache.org/docs-2.0
● www.apacheweek.com
● linuxtoday.com/stories/18780.html
● www.iisanswers.com
● www.iisadministrator.com
11