Book Review: Apache Pocket Reference

"HTTP Pocket Reference" by Clinton Wong and "Apache Pocket Reference" by
Andrew Ford are two new additions to the O'Reilly Pocket Reference series
with sixteen other titles to its name.

For those who are unfamiliar with this series, they are small handy quick
reference books measuring 4.25 by 7 inches. These two books have only one
body; divided into main sections and not chapters. The sections are not numbered
and continue on the same page where the previous section ends, giving the illusion that both books
contain only one long chapter.

On its back cover, O'Reilly markets the "Apache Pocket Reference" as a
companion volume to "Writing Apache Modules with Perl and C" and "Apache:
The Definitive Guide, 2nd Edition". With only 111 pages and 18 main
sections, the content kick off with a clear explanation of the
typographical conventions used, followed by a brief outline of the
command-line options for starting and stopping Apache. Then it lists all
the directories, support utilities and modules that are included in the
Apache web server distribution together with short descriptions. The
modules are also listed with their assigned status, such as OPTIONAL, EXPERIMENTAL or BASE
(compiled into the server by default). Next we have the directives with
the usual information: directive syntax, contexts in which it may be used,
the module that implements it, version compatibility, default value and a
summary of its function followed by a list of environment variables.

The directives are presented in the sequence of those used in general
configuration, in each phase of the Apache processes by order of
occurrence, and in secure Apache implementations with explanations provided
for each section. As they are not grouped by modules or sorted in
alphabetical order, core Apache directives are scattered under different
sections; but an index of directives has been thoughtfully included to
facilitate searching for directives.

The secure Apache section aspires to cover all SSL directives implemented
by mod_ssl, Apache-SSL, and commercial versions of secure Apache such as
Red Hat Secure Web Server, Covalent Raven SSL Module, C2Net's Stronghold,
and IBM HTTP Server. As the different versions often have different names
for similar directives, it tries to clarify this confusing situation by
providing a compatibility note indicating which implementations the
SSL directives are applicable to. This is a very useful feature but we did
find slightly out-of-date information.

Not all directives are included, and some experimental modules and
optional modules have been omitted. Minor niggles include details on
mod_status which is compiled into Apache by
default is given the status OPTIONAL instead of BASE, and the closing ">" for
container directives is missing in the top line of each direction
subsection which gives the name of the directive so "<Directory>" is
printed as "<Directory" but this can be overlooked as it is found in the
syntax that follows.

Surprisingly Apache Pocket Reference is not a dry book as the occasional
explanations under the various sections break the monotony of reading
pages and pages of directives. Someone who is new to the Apache web server
could still read the whole book at one go and discover the power of this
web server without having to read a thick book.

We think this short and compendious book is most suitable for solution providers
and professional services personnel who are working with Apache web server
and constantly on the move, as it is packed with technical information,
highly portable, fits snugly in a back pocket or jacket pocket and can be
whipped out in a second when one Apache directive keeps eluding the mind.
It is truly the constant companion for die-hard Apache users and like it
or not, the copy you own will soon have dog-eared pages.

Moving on to our next book, "HTTP Pocket Reference" is aimed at providing a
better understanding of HTTP for busy people such as system
administrators, web site designers and developers, not to mention software
engineers who need to grasp the gist of this subject without spending too
much time poring over it. For the World Wide Web junkies who have not the
slightest idea of how it all works, this will be an interesting revelation
as it takes the mystery out of the communications between web servers and
clients in a simple and easy-to-understand presentation.

For such a thin book, it manages to cram technical facts, dumps of HTTP
transactions, many diagrams and tables within only 80 pages. First, it
explains what HTTP is all about, the many advantages of understanding how
HTTP works and then proceeds to dissect and analyse every component of a
common web transaction between the client and server program which is made
up of a request and a response message.

It then lists out and explains the various client request methods, server
response codes, HTTP headers, URL encoding, the way client and server
identify themselves, the use of Referer(sic) header, the way a client retrieves
data from the server's response, Internet MIME Types and four bonus
topics that are cookies, authorization, persistent connections, and client
caching.

Some readers may prefer to have an index as there is none but this book is
so very thin and concise that the time one spent looking through the index
would be much better spent flipping through the pages, scanning for the
information one required. As this is not a guide for implementing HTTP,
detailed examples of applying the information are not provided.

This book is the perfect starting point for the curious and uninitiated
Web surfers who want to deepen their knowledge of how it all works. For
the technical professional, this will serve as the quick reference guide
to server response codes, HTTP headers, character encoding, and Internet
MIME types.

These two books are such a joy to review until we are now anxiously
awaiting the imminent arrival of another member - mod_perl Pocket
Reference and are looking forward to reviewing it.

If you are reading this review before August 15th 2000 we have a special
competition where you can win one of four sets of these books. See
Apache Week issue 210.

This
feature
brought to you by: Min Min Tsan
Comments or criticisms? Please email us at editors@apacheweek.com