Essential Apache for Web Professionals
Author: Scott Hawkins
Pages: 256
Publisher: Prentice Hall PTR
ISBN: 0130649309
Introduction
This is my second Apache related book review, so I’ll spare you of the introducing paragraph with props about how powerful Apache is, and how it should suite all your web server needs. The review is a bit shorter than our usual reviews as the book has about 130 pages of text, with additional 80 pages divided into two appendixes covering error codes and listing of Apache directives.
About the author
Scott Hawkins is a UNIX System Administrator located in Atlanta, Georgia. His previous books include “Linux Desk Reference Second Edition” and “Apache Web Server Administration and E-Commerce Handbook”. With Ellie Quigley, he is co-author of “The Complete Linux Shell programming Training Course“.
An interview with Scott Hawkins is available here.
Inside the book
Experienced system administrator with another Apache book behind, Mr. Hawkins presents the overview on Apache web server, which he divides into five logical parts – installation, basic Apache, hosting multiple sites, dynamic content and advanced topics. Each of the parts contains just enough information you will need, making this book a perfect reference guide.
As most of the technical books do, “Essential Apache for Web Professionals” starts with an introduction on some of the basic concepts needed for understanding the content of the book. Presented here, you will find information on general network concepts (IP addresses, name resolution, socks, ports and protocols) and Apache-specific concepts (parent and child processes, directives, handlers, modules and MIME types).
Following the introduction, author presents a detailed guide related to Apache installation on both Unix/Linux and Windows environments. I should mention that the Windows operating system receives less exposure, as the installation is based on the point-and-click method, while Unix/Linux offers more things to do. Apache can be installed both from source code or directly with a binary distribution. Both ways will have its fans, as some people just want the typical installations, when the others like the pleasures of customization.
In the “Basic Apache” chapter, the author presents valuable information on the important functionalities of the Apache web server and provides an extensive overview of Apache httpd.conf directives. You configured Apache at least ones in your IT history right? If you did, you probably know that configuration is a smooth process and that httpd.conf file offers a lot of background information on the things needed to be set-up. The configuration section of this book provides a worthy written reference to the directives defined in the configuration file. The section can be of a big interest to you, as it provides scope on all those directives you just passed by and wondered for what they are used for. Other main parts of this chapter include logging and processes of starting and stopping the Apache web server. Each of these topics is covered decently and offers some nice tips.
In the following short chapter entitled “Hosting Multiple Sites”, the author discusses the three most popular methods of enabling a single Apache server to serve multiple sites. These ways include creating user homepages (defined by adding ~user to the default server address), virtual hosting by name (when Domain Name Servers point several domain names to the same Apache powered server) and virtual hosting by IP (concept similar to using the hosting by name but it doesn’t uses the NameVirtualHost directive). Afterwards the author introduces the concepts of dynamical content with a scope on CGI, SSI, PHP, FastCGI, mod_perl and mod_python. These topics also contain some security tips presented along the lines. The fifth, final chapter, talks about Apache performance tuning, creation of custom modules, load balancing and interaction with Web Databases.
All the chapters presented in this publication, are introduced with an “actual” author’s view on how he started with Apache. One of the chapter introductions contains a really funny “boss description”. Here it goes: “June was one of those caffeine-powered corporate ambitionaholics who won’t have a soul until it’s available for the Palm Pilot. The help desk hummed the Darth Vader theme song when she walked by. Rumor had it that Nostradamus mentioned her by name” 🙂
My take on the book
As the book is titled “Essential Apache for Web Professionals”, it delivers just that – the essential easily understandable information needed for Apache administrators and Apache wannabes. If you ever worked with Apache, you probably know that this little package offers great functions and features, and this book will provide you an insight on the Apache stages, from installation to the advanced usage.
I was really satisfied with the way Mr. Hawkins presents information on the Apache web server, detailing all the configuration and usage descriptions and correlating them to the appropriate directives and functions. The book doesn’t offer a separate section on security, but the author is security conscious and security tips can be found throughout the book. I would recommend this book for Apache administrators of novice and inter-mediate level, as well to any web professional that should know what Apache is and how it works.