AxKit combines the power of Perlís rich and varied XML processing facilities with the flexibility of the Apache web server. But instead of using a monolithic package, it takes a more modular approach. This allows developers great flexibility in choosing what lower-level packages they want, but it can mean a more lengthy and complicated installation process. This article comes from chapter two of the book XML Publishing with AxKit by Kip Hampton (O'Reilly, 2004; ISBN: 0596002165).
As you will learn in later chapters, AxKit offers quite a number of runtime configuration options that allow fine-grained control over every phase of the XML processing and delivery cycle. Getting a basic working configuration requires very little effort, however. In fact, AxKit ships with a sample configuration file that can be included into Apacheís main server configuration (or used as a road map for adding the configuration directives manually, if you decide to go that way instead).
Copy the example.conf file in the AxKit distributionís examples directory into Apacheís conf directory, renaming it axkit.conf. Then, add the following to the bottom of your httpd.conf file:
# AxKit Setup Include conf/axkit.conf
You now need to edit the new axkit.conf file to match the XML processing libraries that you installed earlier by uncommenting the AxAddStyleMap directives that correspond to tools you chose. For example, if you installed libxslt and XML::LibXSLT, you would uncomment the AxAddStyleMap directive that loads AxKitís interface to LibXSLT. Example 2-1 helps to clarify this.
Example 2-1. Sample axkit.conf fragment
# Load the AxKit core. PerlModule AxKit # Associates Axkit with a few common XML file extensions AddHandler axkit .xml .xsp .dkb .rdf # Uncomment to add XSLT support via XML::LibXSLT # AxAddStyleMap text/xsl Apache::AxKit::Language::LibXSLT # Uncomment to add XSLT support via Sablotron # AxAddStyleMap text/xsl Apache::AxKit::Language::Sablot # Uncomment to add XPathScript Support # AxAddStyleMap application/x-xpathscript Apache::AxKit::Language::XPathScript # Uncomment to add XSP (eXtensible Sever Pages) support # AxAddStyleMap application/x-xsp Apache::AxKit::Language::XSP
The one hard-and-fast rule about configuring AxKit is that the PerlModule directive that loads the AxKit core into Apache via mod_perl must appear at the top lexical level of your httpd.conf file, or one of the files that it includes. All other AxKit configuration directives may appear as children of other configuration directive blocks in whatever way best suits your server policy and application needs, but the PerlModule AxKit line must appear only at the top level.