Learning Apache Basics

Apache is a web server. In other words, it is a service that runs on an operating system such as Linux, and it responds to requests. When users enter the address of a desired web page into a browser, their computers look to DNS servers to find the IP address of the desired web server. Once contact is made, the browser asks for the web page, usually on TCP/IP port 80. Apache responds to such requests by sending a web page to the requesting computer.

If you re currently running a web server based on Apache 1.3. x , you have some decisions to make. Red Hat Linux 9 includes Apache version 2.0.40. If you install these Apache packages, you may need to make several configuration changes. You should not upgrade your Apache server until you understand and have tested your websites on the new system.

Apache 2.0

Red Hat incorporated Apache version 2.0. x for the first time in Red Hat Linux 8.0. Apache version 1.3. x is still in common use. Many of you experienced with Apache may not be familiar with the changes in version 2.0. x , which include the following:

  • The Virtual Hosts features allow you to configure completely different websites using the same IP address.

  • Directives have been changed. Those related to Perl, PHP (PHP Hypertext Processor), Python, Structured Query Language (SQL), and the Secure Sockets Layer (SSL) now have their own configuration files in the /etc/httpd/conf.d directory.

  • Variables have changed. For example, you ll learn how to change the TCP/IP port associated with Apache using the Listen variable later in this chapter.

  • Packages are more modular. We ll look at the different packages associated with Apache in the next section.

  • Threads are used efficiently . Threads can share common data; in Apache 2.0, threads are normally processed -based, which prevents server crashes. Multi-Processing Modules (MPM) support customization in this area, which helps you optimize Apache for the host operating system.

  • IPv6 addresses can be used. While there s a patch that allows the use of IPv6 addresses in Apache 1.3. x , it is no longer recommended.

While some of these features have been back-ported to Apache 1.3. x (one reason why I think these older Apache servers will be around for some time), they were developed for Apache 2.0.


Apache is a modular server. As described in Web Chapter 5, the only required Apache RPM package is httpd-* . There are a number of other Apache packages that you can install, as shown in Table 30.2.

Table 30.2: Apache Packages




Installs the main Apache server


Includes a complete manual for Apache


Allows interfaces with Linux hardware cryptographic accelerators


Allows access limits to PostgreSQL databases


Supports access limits to MySQL-based databases


Adds a Python language interpreter to Apache


Adds a Perl language interpreter to Apache


Includes SSL security in Apache


Installs PHP for dynamic scripts (PHP stands for PHP: Hypertext Preprocessor)


Provides IMAP mail server support to Apache


Allows LDAP support for Apache


Implements PHP support of MySQL-based databases


Allows PHP interaction with Open Data Base Connectivity (ODBC)-based databases


Installs a PHP interface with PostgreSQL-based databases


Installs a proxy server


Adds a kernel-based web server


Includes a log analysis program for your web server


Mastering Red Hat Linux 9
Building Tablet PC Applications (Pro-Developer)
ISBN: 078214179X
EAN: 2147483647
Year: 2005
Pages: 220

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net