Chapter 23. The Apache Web Server

Table of Contents

23.1. Basics
23.2. Setting up the HTTP Server with YaST
23.3. Apache Modules
23.4. Threads
23.5. Installation
23.6. Configuration
23.7. Using Apache
23.8. Active Contents
23.9. Virtual Hosts
23.10. Security
23.11. Troubleshooting
23.12. For More Information

Abstract

This chapter presents the web server Apache. As well as explaining how to perform installation and configuration, it also describes a few modules. Some variations for virtual hosts are also mentioned.

23.1. Basics

With a share of more than sixty percent, Apache is the world's most widely-used web server (source: http://www.netcraft.com). For web applications, Apache is often combined with Linux, the database MySQL, and the programming languages PHP and Perl. This combination is commonly referred to as LAMP.

23.1.1. Web Server

A web server issues HTML pages requested by a client. These pages can be stored in a directory (passive or static pages) or generated in response to a query (active contents).

23.1.2. HTTP

The clients are usually web browsers, like Konqueror or Mozilla. Communication between the browser and the web server takes place using the hypertext transfer protocol (HTTP). The current version, HTTP 1.1, is documented in RFC 2068 and in the update RFC 2616. These RFCs are available at http://www.w3.org.

23.1.3. URLs

Clients use URLs, such as http://www.suse.com/index_us.html, to request pages from the server. A URL consists of:

Protocol

Frequently-used protocols:

  • http:// The http protocol

  • https:// Secure, encrypted version of HTTP

  • ftp:// file transfer protocol for downloading and uploading files

Domain

In this example, www.suse.com. The domain can be subdivided into two parts. The first part (www) points to a computer. The second part (suse.com) is the actual domain. Together, they are referred to as FQDN (fully qualified domain name).

Resource

In this example, index_us.html. This part specifies the full path to the resource. The resource can be a file, as in this example. However, it can also be a CGI script, a JavaServer Page, or some other resource.

The responsible Internet mechanism, such as the domain name system, DNS, forwards the query to the domain www.suse.com, directing it to one or several computers hosting the resource. Apache then delivers the actual resource, in this example, the page index_us.html, from its file directory. In this case, the file is located in the top level of the directory. However, resources can also be located in subdirectories, as in http://support.novell.com/linux/.

The file path is relative to the DocumentRoot, which can be changed in the configuration file. 23.6.2.1. “DocumentRoot” describes how this is done.

23.1.4. Automatic Display of a Default Page

If no default page is specified, Apache automatically appends one of the common names to the URL. The most frequently-used name for such pages is index.html. This function, together with the actual page names the server should use, can be configured as described in 23.6.2.7. “DirectoryIndex”. In this example, http://www.suse.com is sufficient to prompt the server to deliver the page http://www.suse.com/index_us.html.


SUSE LINUX 9.2