Original URL: http://www.theregister.co.uk/2007/08/22/apache_modules_book/

The Apache Modules Book

Is this the missing Apache manual?

By Simon Bisson

Posted in Developer, 22nd August 2007 10:29 GMT

Review Subtitled Application Development With Apache, this is a book for web developers who want to take their web applications to the next level – running them inside their web servers.

Apache's modular architecture makes it possible to build applications into server modules, but there's a catch: there's not much documentation, and most of that is out of date.

Starting with a look at Apache and the history and philosophy of the Apache project, this book takes a good look at the Apache API. If you're going to build your own modules, you'll need to be familiar with the API and how you can use it to interact with the web server.

Apache development isn't just for the web server. The Apache Portable Runtime is also at the heart of tools like Subversion, so there's also plenty of information on how to work with APR, including how it can be used to access databases.

The APIs are only part of the story, and there's a lot of information about Apache coding conventions and about how modules work with data and communicate with each other. One key issue is working with callbacks and how Apache works around C's restrictions. There's also information on how to manage persistent data, something that's becoming more and more important with Web 2.0 style applications.

The first module the book shows you how to build is a simple Content Generator. It's a useful place to start, as the worked example shows how you can use an Apache module to deliver content to a web browser – which you'll need to do in nearly every module you'll write. The exercise also walks you through adding inputs and processing the HTTP data delivered to your module. Handling requests is an important piece of any web application, and module request handling gets it own chapter.

You'll also find one on access control – something that's critical if you're aiming to build a set of modules to deliver a secure web application. Apache lets you chain modules together, using them as data filters. This can be a complex process, but the book simplifies the design and development process, and clarifies much of the rationale for filter implementation.

There's a lot here – with the book covering everything from module configuration, to deployment, to extending the Apache API yourself. And, of course, any self-respecting development title wouldn't be the same without a chapter on debugging, and this book isn't an exception to the rule...

You don't need to be a C programmer to work with this book either. While many Apache modules are written in C, there's a lot of scope for working with any high level language, including dynamic languages like Ruby. Worked examples show how to develop modules, and API calls are clearly documented.

The Apache Modules Book

apache modules bookVerdict: There's a line of consumer IT books called the Missing Manuals. This clear, well-written and, above all, helpful book is, effectively, one of Apache's Missing Manuals. It plugs a well known hole in the online documentation, and gives you the tools you need to go out and build your own custom Apache modules.

Author: Nick Kew

Publisher: Prentice Hall

ISBN: 0-13-240967-4

Media: Book

List Price: £35.99

Current Reg price: £23.75 (inc VAT) Buy this book at Register Books at Reg Developer's special discounted price (subject to change). ®