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.

Packages

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

Name

Description

httpd

Installs the main Apache server

httpd-manual

Includes a complete manual for Apache

hwcrypto

Allows interfaces with Linux hardware cryptographic accelerators

mod_auth_pgsql

Allows access limits to PostgreSQL databases

mod_auth_mysql

Supports access limits to MySQL-based databases

mod_python

Adds a Python language interpreter to Apache

mod_perl

Adds a Perl language interpreter to Apache

mod_ssl

Includes SSL security in Apache

php

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

php-imap

Provides IMAP mail server support to Apache

php-ldap

Allows LDAP support for Apache

php-mysql

Implements PHP support of MySQL-based databases

php-odbc

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

php-pgsql

Installs a PHP interface with PostgreSQL-based databases

squid

Installs a proxy server

tux

Adds a kernel-based web server

webalizer

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