Config::ApacheFormat 1.2 ======================== CHANGES - Nathan Wiger ported many features from Apache::ConfigFile in an effort to combine the two modules. These features include: o The fix_booleans option, which allows automatic conversion of yes/on/true to 1 and no/off/false to 0 o The expand_vars option, allowing reuse of previously-defined directives as $directive o The setenv_vars option, which will automatically place variables defined via the SetEnv directive into the %ENV hash o The hash_directives option, which allows proper handling of directives where the first value is really a key (ex. AddHandler). o The duplicate_directives option, which allows the programmer to choose how duplicate directives are handled (by default the last one is kept, allowing subsequent configs to override earlier Includes) o Support for multiple blocks with the same name. o Support for include directories and multiple include files on a single line o The root_directive option, which allows the user to define a root for that config file which is prepended to relative Include paths. - Added include_directives option to allow for differently named Include directives. - Removed deprecated support for the wrong spelling of inheritance_support as inheritence_support. - Fixed bug preventing mixed-case valid_directives and valid_blocks from working. INSTALLATION To install this module type the following: perl Makefile.PL make make test make install DEPENDENCIES This module requires these other modules and libraries: Carp Class::MethodMaker 1.08 Text::Balanced 1.89 File::Spec 0.82 Scalar::Util DESCRIPTION This module is designed to parse a configuration file in the same syntax used by the Apache web server (see http://httpd.apache.org for details). This allows you to build applications which can be easily managed by experienced Apache admins. Also, by using this module, you'll benefit from the support for nested blocks with built-in parameter inheritance. This can greatly reduce the amount or repeated information in your configuration files. A good reference to the Apache configuration file format can be found here: http://httpd.apache.org/docs-2.0/configuring.html To quote from that document, concerning directive syntax: Apache configuration files contain one directive per line. The back-slash "\" may be used as the last character on a line to indicate that the directive continues onto the next line. There must be no other characters or white space between the back-slash and the end of the line. Directives in the configuration files are case-insensitive, but arguments to directives are often case sensitive. Lines that begin with the hash character "#" are considered comments, and are ignored. Comments may not be included on a line after a configuration directive. Blank lines and white space occurring before a directive are ignored, so you may indent directives for clarity. And block notation: Directives placed in the main configuration files apply to the entire server. If you wish to change the configuration for only a part of the server, you can scope your directives by placing them in , , , , , and sections. These sections limit the application of the directives which they enclose to particular filesystem locations or URLs. They can also be nested, allowing for very fine grained configuration. This module will parse actual Apache configuration files, but you will need to set some options to non-default values. See the section on "Parsing a Real Apache Config File" in the module documentation for more details. COPYRIGHT AND LICENSE Copyright (C) 2002-2003 Sam Tregar This program is free software; you can redistribute it and/or modify it under the same terms as Perl 5 itself.