You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Jeff Trawick <tr...@gmail.com> on 2011/03/01 01:34:46 UTC

Re: ap_read_config() from remote resource

2011/2/28 Igor Galić <i....@brainsware.org>:
> Hey folks,
>
> I think we discussed such possibilities last year at the retreat
> but didn't really follow up on it, so lets assume it's a fresh new
> idea which I just thought of :)
>
> ap_read_config() passes the config file it gets more or less
> directly to ap_pcfg_openfile() which again pass it more or less
> directly to apr_file_open() -- now what if we wanted to place
> our configuration files on a remote (HTTP ;) resource. Of course
> it sounds silly to boot-strap an HTTP server from an HTTP server
> but JBoss for instance supports that -- in part at least: For the
> application's properties files.
>
> I think it's worth the effort, even if it leaves a number of
> questions unanswerd..
>
> * Where to hook such functionality? in ap_read_config()?
> ap_pcfg_openfile() or in apr_file_open()?
>
> * How do we handle Include? I imagine something like:
>
> IncludeAllowCrossDomain Off
>
> * How do we handle relative Includes?
> We could either use Define:
>
> Define BaseURI http://conf.example.org/prod/
>
> Or define such a directive within core.
>
>
> That's the list of key issues I can think of right now.
>
> Maybe the (release) scope might be of importance too: Does it make
> sense to push this into 2.4, or should we stuff it into the next
> release?

my half cent:

forget about the http:// considerations and release scope

what's the least that has to be added pre-2.4 to allow

1. some pre-linked module to provide the entire sequence of
directives, whether from a URL or an XML doc or ...
(ap_read_config is core's implementation of some hook?)
2. any module to implement its own flavor of include
(httpd.conf is simply, or has in it, "includeremote http://xx/")
3. XXX

does mod_perl do interesting stuff to provide lines of config in some
situations?