Thanks everybody for your suggestions. I actually went through the past
threads on that topic, and it seems to me it always sparks much
discussion!!

Karyn> I believe he is trying to do this 'on the fly' without reboot for
Karyn> the new configs.

Exactly.

Karyn> I beat my head on this pretty good before and ended having to invest
Karyn> in the development to make it work, but the development really
Karyn> wasn't that ugly and it works like a champ.  Just make sure you have
Karyn> some kind of caching mechanism (or figure out how to use the apache
Karyn> pools) so that you aren't hitting the database for every http
Karyn> request.

I actually use some caching, so I don't expect to have much penalties from 
it.

I finally decided to rewrite the URI translation handler in perl
at first, and later on directly in C for best performance. This approach
will also allow me to tune the translation stage to my particular case
and remove all the little inefficiencies (extra stat()'s) there.
As opposed to your case I don't have downstream frontpage or CGI, so I
guess I don't need to worry about passing along the DOCUMENT_ROOT correctly.
Though as you say it would be nice to simplify the whole process in
the future.

Cheers,
Serge

Karyn> I didn't find too many people who really understood what the
Karyn> benefits are of doing this.  I guess if someone did, it would be
Karyn> more accessible in Apache itself.  The benefits in management,
Karyn> scalability, and minimizing downtime by those idiots ... I mean
Karyn> customers ... who do stupid things like delete their htdocs
Karyn> directories and cause the whole rebooting process to fail.
Karyn> If any of the big guys are listening, this is big on my wish list
Karyn> for upcoming apache adds.  I've committed myself to bellying up to
Karyn> the bar to learn C just so I can do something like this using the
Karyn> apache engine.

Karyn> - Karyn

Karyn> -----Original Message----- From: Michael
Karyn> [mailto:[EMAIL PROTECTED]] Sent: Tuesday, March 28, 2000 2:03
Karyn> PM To: [EMAIL PROTECTED] Subject: RE: Set DocumentRoot from modperl


>> Sergio,
>> 
>> I just walked this route...
>> 
>> The long and short is that it can't be done anything close to feasably.

Karyn> There is a work around to this. If you use the syntax


Karyn> perlcode perlcode require 'somefile.cgi'; more perl more perl

Karyn> then the cgi script gets imported into the environment and RUN with
Karyn> the current document root rather than the one for modperl for the
Karyn> whole system. Yeah, it's messy and require was not intended to be
Karyn> used quite that way, but it works!

>>  You'll have to write your own URI Translator and alter some code so
>> that you can introduce your DOCUMENT_ROOT down the line to things like
>> the mod_cgi etc.  If you search the mod_perl forum, you'll see some
>> handy code that one of the gurus around here provided me use the NOTES
>> table.
>> 
>> BTW, if you're introducing FrontPage to your masses.  You'll have to
>> re-write your own fpcount.exe.  The codes not available and it's
>> anybody's guess where the hell it actually gets the document root from
>> (I even encoded it into the mod_frontpage.c module without success) and
>> naturally the source isn't available.
>> 
>> Have fun.  I did!
>> 
>> --------------------------------------------------------------------
>> - Best regards,
>> 
>> Karyn Ulriksen Chief Systems Architect PublicHost 22 Mauchly, Suite 200
>> Irvine, California 92618 USA Phone: (949) 743-2000 email:
>> [EMAIL PROTECTED] URL: http://www.publichost.com
>> 
>> 
>> 
>> -----Original Message----- From: Serge <Serge Barbosa Da Torre
>> [mailto:[EMAIL PROTECTED]] Sent: Tuesday, March 28, 2000 1:45 PM To:
>> [EMAIL PROTECTED] Subject: Set DocumentRoot from modperl
>> 
>> 
>> 
>> Hi, I am trying to find a way of setting DocumentRoot (and possibly
>> Alias) directly from modperl in order to implement dynamically generated
>> virtual hosting. The thing is that my virtualhost parameters comes from
>> a database and may change anytime (so I can't restart Apache in
>> general), so it is difficult to implement with Apache virtual host
>> rewrite, mod_rewrite or even <Perl> directives in httpd.conf. I tried to
>> use subprocess_env to set this variable, but it is useful only for
>> cgi-scripts, not perl or C handlers since it sets the Environment
>> variable only.
>> 
>> Is the only solution to rewrite the URI translation phase so it does not
>> use DocumentRoot directive??
>> 
>> -- 
>> Serge Barbosa Da Torre - [EMAIL PROTECTED]
>> 
>> "It's not easy, being green."  -- Kermit the Frog
>> 

-- 
Serge Barbosa Da Torre  -  [EMAIL PROTECTED]

"It's not easy, being green."
                -- Kermit the Frog

Reply via email to