SlideShare a Scribd company logo
1 of 30
Web Servers Web   Protocols   and   Practice Chapter 4
Topics Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Web Server Definition Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Web Server Definition Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object]
Web Site versus Web Server Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object]
Steps in Handling a Client Request Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Access Control Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object]
AUTHENTICATION Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
AUTHORIZATION Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object],[object Object]
Dynamically Generated Responses   Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object],[object Object]
Server-Side Include Web   Protocols   and   Practice WEB SERVERS ,[object Object]
Server Script Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Server Script Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object],[object Object]
Passing Data to/from the Script Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object]
Table 4.1.   Example CGI environment variables Web   Protocols   and   Practice WEB SERVERS 10.9.57.188 users.berkeley.edu REMOTE_ADDR REMOTE_HOST Client www.bar.com Apache/10206 HTTP/1.0 80 /www CGI/2.0 SERVER_NAME SERVER_SOFTWARE SERVER_PROTOCOL SERVER_PORT DOCUMENT_ROOT GATEWAY_INTERFACE Server Text/html 158 GET NAME=Noam+Chomsky De-CH Mozilla/2.0 CONTENT_TYPE CONTENT_LENGTH REQUEST_METHOD QUERY_STRING ACCEPT_LANGUAGE HTTP_USER_AGENT Request Example Variable Type
Creating and Using Cookies Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Creating and Using Cookies Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object]
Sharing Information Across Requests Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object]
Sharing HTTP Responses Across Requests Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object],[object Object],[object Object]
Sharing Metadata Across Requests Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Server Architecture Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object],[object Object]
Event-Driven Server Architecture Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object],[object Object],[object Object]
Process-Driven Server Architecture Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Hybrid Server Architecture Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object],[object Object],[object Object]
Server Hosting Web   Protocols   and   Practice WEB SERVERS ,[object Object],[object Object],[object Object]
Web   Protocols   and   Practice www.foo.com www.bar.com www.big.com www.big.com www.mid.com Surrogate 1 2 3 4 To/From Internet Figure 4.1.  Hosting complex with surrogate in front of four server machines WEB CLIENTS
Apache Web Server Web   Protocols   and   Practice WEB SERVERS ,[object Object]
Table 4.2  Key configuration directives for child processes and network connection Web   Protocols   and   Practice WEB CLIENTS Initial number of child processes (5) Maximum number of child processes (256) Target Minimum number of idle children (5) Target Maximum number of idle children (10) Maximum number of requests per child (30) Maximum number of pending connections (511) Size of the TCP send buffer (OS default) Max number of requests per connection (100) Maximum idle time for connection (15 sec) StartServers MaxClients MinSpareServers MaxSpareServers MaxRequestsPerChild ListenBacklog SendBufferSize MaxKeepAliveRequests KeepAliveTimeout Definition (default value in Apache 1.3.3) Directive
Apache Web Server Web   Protocols   and   Practice WEB SERVERS ,[object Object]
Table 4.3  Built-in handlers in Apache server and default file extension Web   Protocols   and   Practice WEB CLIENTS Send the file as static content Send the file as an HTTP response message (.asis) Invoke the file as a CGI script (.cgi) Treat the file as a server-side include (.shtml) Treat the file as an imagemap rule file (.imap) Treat the file as a map for content negotiation (.var) Get the server’s configuration information Get the server’s status report Default-handler Send-as-is Cgi-script Server-parsed Imap-file Type-map Server-info Server-status Purpose (file extension) Handler

More Related Content

What's hot

Introduction to Web Hosting.
Introduction to Web Hosting.Introduction to Web Hosting.
Introduction to Web Hosting.Cloudbells.com
 
Introduction to Web Architecture
Introduction to Web ArchitectureIntroduction to Web Architecture
Introduction to Web ArchitectureChamnap Chhorn
 
Uniform Resource Locator (URL)
Uniform Resource Locator (URL)Uniform Resource Locator (URL)
Uniform Resource Locator (URL)Mary Daine Napuli
 
Introduction to Web Development
Introduction to Web DevelopmentIntroduction to Web Development
Introduction to Web DevelopmentParvez Mahbub
 
introduction to web technology
introduction to web technologyintroduction to web technology
introduction to web technologyvikram singh
 
Web servers (l6)
Web servers (l6)Web servers (l6)
Web servers (l6)Nanhi Sinha
 
How Internet Works
How Internet WorksHow Internet Works
How Internet Workssumit kumar
 
virtual hosting and configuration
virtual hosting and configurationvirtual hosting and configuration
virtual hosting and configurationHAMZA AHMED
 
Web Database
Web DatabaseWeb Database
Web Databaseidroos7
 
Simple Mail Transfer Protocol
Simple Mail Transfer ProtocolSimple Mail Transfer Protocol
Simple Mail Transfer ProtocolUjjayanta Bhaumik
 

What's hot (20)

Introduction to Web Hosting.
Introduction to Web Hosting.Introduction to Web Hosting.
Introduction to Web Hosting.
 
Proxy Server
Proxy ServerProxy Server
Proxy Server
 
Introduction to Web Architecture
Introduction to Web ArchitectureIntroduction to Web Architecture
Introduction to Web Architecture
 
world wide web
world wide webworld wide web
world wide web
 
Uniform Resource Locator (URL)
Uniform Resource Locator (URL)Uniform Resource Locator (URL)
Uniform Resource Locator (URL)
 
Introduction to Web Development
Introduction to Web DevelopmentIntroduction to Web Development
Introduction to Web Development
 
Web browser
Web browserWeb browser
Web browser
 
introduction to web technology
introduction to web technologyintroduction to web technology
introduction to web technology
 
Web servers (l6)
Web servers (l6)Web servers (l6)
Web servers (l6)
 
web server
web serverweb server
web server
 
How Internet Works
How Internet WorksHow Internet Works
How Internet Works
 
virtual hosting and configuration
virtual hosting and configurationvirtual hosting and configuration
virtual hosting and configuration
 
WEB HOSTING
WEB HOSTINGWEB HOSTING
WEB HOSTING
 
world wide web
world wide webworld wide web
world wide web
 
Web Database
Web DatabaseWeb Database
Web Database
 
Simple Mail Transfer Protocol
Simple Mail Transfer ProtocolSimple Mail Transfer Protocol
Simple Mail Transfer Protocol
 
Proxy Servers
Proxy ServersProxy Servers
Proxy Servers
 
Domain name system
Domain name systemDomain name system
Domain name system
 
Web server
Web serverWeb server
Web server
 
World Wide Web (WWW)
World Wide Web (WWW)World Wide Web (WWW)
World Wide Web (WWW)
 

Similar to Web Servers (ppt)

0_Leksion_Web_Servers (1).pdf
0_Leksion_Web_Servers (1).pdf0_Leksion_Web_Servers (1).pdf
0_Leksion_Web_Servers (1).pdfZani10
 
Distributed web based systems
Distributed web based systemsDistributed web based systems
Distributed web based systemsReza Gh
 
introduction to Web system
introduction to Web systemintroduction to Web system
introduction to Web systemhashim102
 
Configuring the Apache Web Server
Configuring the Apache Web ServerConfiguring the Apache Web Server
Configuring the Apache Web Serverwebhostingguy
 
Web Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfWeb Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfRaghunathan52
 
Web Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfWeb Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfRaghunathan52
 
Hypertext Transfer Protocol
Hypertext Transfer ProtocolHypertext Transfer Protocol
Hypertext Transfer ProtocolRajan Pandey
 
web-servers3952 (1)qwjelkjqwlkjkqlwe.ppt
web-servers3952 (1)qwjelkjqwlkjkqlwe.pptweb-servers3952 (1)qwjelkjqwlkjkqlwe.ppt
web-servers3952 (1)qwjelkjqwlkjkqlwe.ppt20521742
 
Anintroductiontojavawebtechnology 090324184240-phpapp01
Anintroductiontojavawebtechnology 090324184240-phpapp01Anintroductiontojavawebtechnology 090324184240-phpapp01
Anintroductiontojavawebtechnology 090324184240-phpapp01raviIITRoorkee
 
Rest WebAPI with OData
Rest WebAPI with ODataRest WebAPI with OData
Rest WebAPI with ODataMahek Merchant
 
21. Application Development and Administration in DBMS
21. Application Development and Administration in DBMS21. Application Development and Administration in DBMS
21. Application Development and Administration in DBMSkoolkampus
 
Web Component Development Using Servlet & JSP Technologies (EE6) - Chapter 4...
 Web Component Development Using Servlet & JSP Technologies (EE6) - Chapter 4... Web Component Development Using Servlet & JSP Technologies (EE6) - Chapter 4...
Web Component Development Using Servlet & JSP Technologies (EE6) - Chapter 4...WebStackAcademy
 
Web Services 2009
Web Services 2009Web Services 2009
Web Services 2009Cathie101
 
Web Services 2009
Web Services 2009Web Services 2009
Web Services 2009Cathie101
 

Similar to Web Servers (ppt) (20)

0_Leksion_Web_Servers (1).pdf
0_Leksion_Web_Servers (1).pdf0_Leksion_Web_Servers (1).pdf
0_Leksion_Web_Servers (1).pdf
 
Distributed web based systems
Distributed web based systemsDistributed web based systems
Distributed web based systems
 
Ch-1_.ppt
Ch-1_.pptCh-1_.ppt
Ch-1_.ppt
 
introduction to Web system
introduction to Web systemintroduction to Web system
introduction to Web system
 
Configuring the Apache Web Server
Configuring the Apache Web ServerConfiguring the Apache Web Server
Configuring the Apache Web Server
 
Web Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfWeb Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdf
 
Web Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdfWeb Technologies Notes - TutorialsDuniya.pdf
Web Technologies Notes - TutorialsDuniya.pdf
 
Webbasics
WebbasicsWebbasics
Webbasics
 
HTTP Basics
HTTP BasicsHTTP Basics
HTTP Basics
 
Hypertext Transfer Protocol
Hypertext Transfer ProtocolHypertext Transfer Protocol
Hypertext Transfer Protocol
 
web-servers3952 (1)qwjelkjqwlkjkqlwe.ppt
web-servers3952 (1)qwjelkjqwlkjkqlwe.pptweb-servers3952 (1)qwjelkjqwlkjkqlwe.ppt
web-servers3952 (1)qwjelkjqwlkjkqlwe.ppt
 
Intro webapps
Intro webappsIntro webapps
Intro webapps
 
ASP.NET WEB API Training
ASP.NET WEB API TrainingASP.NET WEB API Training
ASP.NET WEB API Training
 
WWW & HTTP
WWW & HTTPWWW & HTTP
WWW & HTTP
 
Anintroductiontojavawebtechnology 090324184240-phpapp01
Anintroductiontojavawebtechnology 090324184240-phpapp01Anintroductiontojavawebtechnology 090324184240-phpapp01
Anintroductiontojavawebtechnology 090324184240-phpapp01
 
Rest WebAPI with OData
Rest WebAPI with ODataRest WebAPI with OData
Rest WebAPI with OData
 
21. Application Development and Administration in DBMS
21. Application Development and Administration in DBMS21. Application Development and Administration in DBMS
21. Application Development and Administration in DBMS
 
Web Component Development Using Servlet & JSP Technologies (EE6) - Chapter 4...
 Web Component Development Using Servlet & JSP Technologies (EE6) - Chapter 4... Web Component Development Using Servlet & JSP Technologies (EE6) - Chapter 4...
Web Component Development Using Servlet & JSP Technologies (EE6) - Chapter 4...
 
Web Services 2009
Web Services 2009Web Services 2009
Web Services 2009
 
Web Services 2009
Web Services 2009Web Services 2009
Web Services 2009
 

More from webhostingguy

Running and Developing Tests with the Apache::Test Framework
Running and Developing Tests with the Apache::Test FrameworkRunning and Developing Tests with the Apache::Test Framework
Running and Developing Tests with the Apache::Test Frameworkwebhostingguy
 
MySQL and memcached Guide
MySQL and memcached GuideMySQL and memcached Guide
MySQL and memcached Guidewebhostingguy
 
Novell® iChain® 2.3
Novell® iChain® 2.3Novell® iChain® 2.3
Novell® iChain® 2.3webhostingguy
 
Load-balancing web servers Load-balancing web servers
Load-balancing web servers Load-balancing web serversLoad-balancing web servers Load-balancing web servers
Load-balancing web servers Load-balancing web serverswebhostingguy
 
SQL Server 2008 Consolidation
SQL Server 2008 ConsolidationSQL Server 2008 Consolidation
SQL Server 2008 Consolidationwebhostingguy
 
Master Service Agreement
Master Service AgreementMaster Service Agreement
Master Service Agreementwebhostingguy
 
PHP and MySQL PHP Written as a set of CGI binaries in C in ...
PHP and MySQL PHP Written as a set of CGI binaries in C in ...PHP and MySQL PHP Written as a set of CGI binaries in C in ...
PHP and MySQL PHP Written as a set of CGI binaries in C in ...webhostingguy
 
Dell Reference Architecture Guide Deploying Microsoft® SQL ...
Dell Reference Architecture Guide Deploying Microsoft® SQL ...Dell Reference Architecture Guide Deploying Microsoft® SQL ...
Dell Reference Architecture Guide Deploying Microsoft® SQL ...webhostingguy
 
Managing Diverse IT Infrastructure
Managing Diverse IT InfrastructureManaging Diverse IT Infrastructure
Managing Diverse IT Infrastructurewebhostingguy
 
Web design for business.ppt
Web design for business.pptWeb design for business.ppt
Web design for business.pptwebhostingguy
 
IT Power Management Strategy
IT Power Management Strategy IT Power Management Strategy
IT Power Management Strategy webhostingguy
 
Excel and SQL Quick Tricks for Merchandisers
Excel and SQL Quick Tricks for MerchandisersExcel and SQL Quick Tricks for Merchandisers
Excel and SQL Quick Tricks for Merchandiserswebhostingguy
 
Parallels Hosting Products
Parallels Hosting ProductsParallels Hosting Products
Parallels Hosting Productswebhostingguy
 
Microsoft PowerPoint presentation 2.175 Mb
Microsoft PowerPoint presentation 2.175 MbMicrosoft PowerPoint presentation 2.175 Mb
Microsoft PowerPoint presentation 2.175 Mbwebhostingguy
 

More from webhostingguy (20)

File Upload
File UploadFile Upload
File Upload
 
Running and Developing Tests with the Apache::Test Framework
Running and Developing Tests with the Apache::Test FrameworkRunning and Developing Tests with the Apache::Test Framework
Running and Developing Tests with the Apache::Test Framework
 
MySQL and memcached Guide
MySQL and memcached GuideMySQL and memcached Guide
MySQL and memcached Guide
 
Novell® iChain® 2.3
Novell® iChain® 2.3Novell® iChain® 2.3
Novell® iChain® 2.3
 
Load-balancing web servers Load-balancing web servers
Load-balancing web servers Load-balancing web serversLoad-balancing web servers Load-balancing web servers
Load-balancing web servers Load-balancing web servers
 
SQL Server 2008 Consolidation
SQL Server 2008 ConsolidationSQL Server 2008 Consolidation
SQL Server 2008 Consolidation
 
What is mod_perl?
What is mod_perl?What is mod_perl?
What is mod_perl?
 
What is mod_perl?
What is mod_perl?What is mod_perl?
What is mod_perl?
 
Master Service Agreement
Master Service AgreementMaster Service Agreement
Master Service Agreement
 
Notes8
Notes8Notes8
Notes8
 
PHP and MySQL PHP Written as a set of CGI binaries in C in ...
PHP and MySQL PHP Written as a set of CGI binaries in C in ...PHP and MySQL PHP Written as a set of CGI binaries in C in ...
PHP and MySQL PHP Written as a set of CGI binaries in C in ...
 
Dell Reference Architecture Guide Deploying Microsoft® SQL ...
Dell Reference Architecture Guide Deploying Microsoft® SQL ...Dell Reference Architecture Guide Deploying Microsoft® SQL ...
Dell Reference Architecture Guide Deploying Microsoft® SQL ...
 
Managing Diverse IT Infrastructure
Managing Diverse IT InfrastructureManaging Diverse IT Infrastructure
Managing Diverse IT Infrastructure
 
Web design for business.ppt
Web design for business.pptWeb design for business.ppt
Web design for business.ppt
 
IT Power Management Strategy
IT Power Management Strategy IT Power Management Strategy
IT Power Management Strategy
 
Excel and SQL Quick Tricks for Merchandisers
Excel and SQL Quick Tricks for MerchandisersExcel and SQL Quick Tricks for Merchandisers
Excel and SQL Quick Tricks for Merchandisers
 
OLUG_xen.ppt
OLUG_xen.pptOLUG_xen.ppt
OLUG_xen.ppt
 
Parallels Hosting Products
Parallels Hosting ProductsParallels Hosting Products
Parallels Hosting Products
 
Microsoft PowerPoint presentation 2.175 Mb
Microsoft PowerPoint presentation 2.175 MbMicrosoft PowerPoint presentation 2.175 Mb
Microsoft PowerPoint presentation 2.175 Mb
 
Reseller's Guide
Reseller's GuideReseller's Guide
Reseller's Guide
 

Web Servers (ppt)

  • 1. Web Servers Web Protocols and Practice Chapter 4
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15. Table 4.1. Example CGI environment variables Web Protocols and Practice WEB SERVERS 10.9.57.188 users.berkeley.edu REMOTE_ADDR REMOTE_HOST Client www.bar.com Apache/10206 HTTP/1.0 80 /www CGI/2.0 SERVER_NAME SERVER_SOFTWARE SERVER_PROTOCOL SERVER_PORT DOCUMENT_ROOT GATEWAY_INTERFACE Server Text/html 158 GET NAME=Noam+Chomsky De-CH Mozilla/2.0 CONTENT_TYPE CONTENT_LENGTH REQUEST_METHOD QUERY_STRING ACCEPT_LANGUAGE HTTP_USER_AGENT Request Example Variable Type
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26. Web Protocols and Practice www.foo.com www.bar.com www.big.com www.big.com www.mid.com Surrogate 1 2 3 4 To/From Internet Figure 4.1. Hosting complex with surrogate in front of four server machines WEB CLIENTS
  • 27.
  • 28. Table 4.2 Key configuration directives for child processes and network connection Web Protocols and Practice WEB CLIENTS Initial number of child processes (5) Maximum number of child processes (256) Target Minimum number of idle children (5) Target Maximum number of idle children (10) Maximum number of requests per child (30) Maximum number of pending connections (511) Size of the TCP send buffer (OS default) Max number of requests per connection (100) Maximum idle time for connection (15 sec) StartServers MaxClients MinSpareServers MaxSpareServers MaxRequestsPerChild ListenBacklog SendBufferSize MaxKeepAliveRequests KeepAliveTimeout Definition (default value in Apache 1.3.3) Directive
  • 29.
  • 30. Table 4.3 Built-in handlers in Apache server and default file extension Web Protocols and Practice WEB CLIENTS Send the file as static content Send the file as an HTTP response message (.asis) Invoke the file as a CGI script (.cgi) Treat the file as a server-side include (.shtml) Treat the file as an imagemap rule file (.imap) Treat the file as a map for content negotiation (.var) Get the server’s configuration information Get the server’s status report Default-handler Send-as-is Cgi-script Server-parsed Imap-file Type-map Server-info Server-status Purpose (file extension) Handler