Naming the path to the config file in an httpd conf will certainly work.
In my case, the path the config file is hard coded in the method that reads the 
config as it is not something that changes.

Here is on of my httpd conf file (a separate file loaded in the http 
configuration directory so your install process doesn't have to change the 
actual httpd.conf):
PerlModule    Your::App
PerlPostConfigHandler Your::App::httpd_start

<Location /foo/app>
    SetHandler modperl
    PerlResponseHandler   +Your::App

    # Apache::DBI needs GlobalRequest
    PerlOptions +GlobalRequest
</Location>

The httpd_start method gets called at apache startup time, and reads the config 
in once.

Also, one other possible advantage to YAML is that YAML is not perl, so if you 
have a mixed language env,
it is easy to share/move/port your config to the language of your choice.
YAML has pretty good support across the common languages you will find in the 
LAMP world.

BTW, if you haven't already done so, I recommend becoming familiar with the 
handlers and their life cycles:
http://perl.apache.org/docs/2.0/user/handlers/server.html
http://perl.apache.org/docs/2.0/user/handlers/http.html#HTTP_Request_Cycle_Phases

Have fun,

-- jeff

From: Jerry Pereira <online.je...@gmail.com<mailto:online.je...@gmail.com>>
Date: Mon, 11 Jul 2011 16:41:13 -0500
To: Jeff McCarrell <jmcca...@akamai.com<mailto:jmcca...@akamai.com>>
Cc: "modperl@perl.apache.org<mailto:modperl@perl.apache.org>" 
<modperl@perl.apache.org<mailto:modperl@perl.apache.org>>
Subject: Re: Best approach to store Application Configuration

please correct me if I am wrong, I should be using tool like 
YAML/Config::General for application configuration storage and reteieval, and 
load them on startup using startup.pl<http://startup.pl> script? That would 
mean i will have to store the name of configuration file some where (probabaly 
in mod_perl configuration block in httpd.conf).


Reply via email to