Chapter 6. Web Servers

IN THIS CHAPTER

  • Basic operation

  • Mechanisms for dynamic content delivery

  • Advanced functionality

  • Server configuration

  • Server security

OBJECTIVES

  • Establish the set of tasks that a web server must perform.

  • Break down server architecture into component modules, establishing the responsibilities of these modules and their interactions.

  • Provide an in-depth analysis of the processing flow in a web server.

  • Examine how servers receive and interpret HTTP requests and create and transmit HTTP responses.

  • Discuss built-in mechanisms for serving dynamic content.

  • Discuss server configuration using Apache as a case study.

  • Provide an overview of common practices to ensure server security.

Web servers enable HTTP access to a collection of documents and other information organized into a tree structure, much like a computer's file system. In addition to providing access to static documents, modern web servers implement a variety of protocols for passing requests to custom software applications that provide access to dynamic content. This chapter begins by describing the process of serving static documents and goes on to explore the mechanisms used to serve dynamic data.

Dynamic content can come from a variety of sources. Search engines and databases can be queried to retrieve and present data that satisfies the selection criteria specified by a user. Measuring instruments can be probed to present their current readings (e.g., temperature or humidity). News feeds and wire services can provide ...

Get Web Application Architecture: Principles, Protocols and Practices, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.