Apache2, config dynamisch laden

Apache, Lighttpd, nginx, Cherokee
Post Reply
krispin
Posts: 216
Joined: 2003-04-14 16:30
 

Apache2, config dynamisch laden

Post by krispin »

Tag Forumerz!

ich habe mal ne Fräge bezüglich dynamisches laden der Configuration-Files unter Apache2.

Ich will nicht irgendwie noch nen Modul mit laufen haben, was die daten dann direkt aus ner DB aus liest, viel eher will ich ein php-script basteln, was alle domains schön geordnert aus gibt.

so ungefähr..

Code: Select all

#!/usr/bin/php
<?PHP

$result = mysql_query(blablabla);
while($resultset = mysql_fetch_array($result))
{
echo "//gebe domain für domain aus...";
}
?>
in der httpd.conf solls dann so aus sehen:

Code: Select all

include ./include_vhosts.php
lädt der apache dann, was das script ausgibt, oder den Source?

MfG
Krispin
alexander newald
Posts: 1117
Joined: 2002-09-27 00:54
Location: Hannover
Contact:
 

Re: Apache2, config dynamisch laden

Post by alexander newald »

Die Source des PHP codes.

Sowas, was du willst geht imho nur mit:

<Perl >
...
</Perl>

und modperl unter Apache2
krispin
Posts: 216
Joined: 2003-04-14 16:30
 

Re: Apache2, config dynamisch laden

Post by krispin »

ach ne, guck an... unser Source-Expert :)
kannste mir da mal nene paar mehr infos drüber geben?

kann man dann Perl-SCript direkt in der httpd.conf ausführen lassen, oder wie geht dat?

MfG
Krispin
alexander newald
Posts: 1117
Joined: 2002-09-27 00:54
Location: Hannover
Contact:
 

Re: Apache2, config dynamisch laden

Post by alexander newald »

;-)

Ja kann man! Alles, was Perl kann, kann man da reinschreiben. Sogar mit Datenbankanbindung etc.

Ich kann ja mal ein Beispielscript zusammenstellen (evtl. morgen)
krispin
Posts: 216
Joined: 2003-04-14 16:30
 

Re: Apache2, config dynamisch laden

Post by krispin »

mir reicht einfach nur ne gute docu, howto install:

weil ich lasse dann eh über den perl-block nochmal nen php-script laufen, weil ich nix ahnung von perl habe. Ok, sollte ich , aber dafür gibbet ja den PHP-Interpreter :)


was du mir aber schreiben könntest ist,

so in dr art:


<perl>
return_exec "include_vhosts.php";
</perl>
... oder so

also ein Script, was den inhalt des ausgeführten scriptes letzenedlich in die config puttet.
MfG
Krispin
alexander newald
Posts: 1117
Joined: 2002-09-27 00:54
Location: Hannover
Contact:
 

Re: Apache2, config dynamisch laden

Post by alexander newald »

Du meinste, dass du von Perl ein PHP Script aufruft und dass dann in die Config liest? Gaaannnnz so einfach geht das nun auch wieder nicht ;-)

Der Perl Block müsste zB. so aussehen:

Code: Select all

foreach $domain (sort @domains) {
        my $servername = $data{"$domain","ServerName"};
        my $documentroot = $data{"$domain","DocumentRoot"};
        if (substr($documentroot,0,length("/home/")) ne "/home/") {
                $data{"$domain","DocumentRoot"} =  
                 $data{"$userid","home_dir"}."/".$data{"$domain","DocumentRoot"};
                $documentroot = $data{"$domain","DocumentRoot"};
                }
        if ($servername and $documentroot) {
                my %conifg = ();
                $config{ServerName} = $data{"$domain","ServerName"};
                $config{DocumentRoot} = $data{"$domain","DocumentRoot"};
                $config{SuexecUserGroup} =  
                   $data{"$userid","realuserid"}." ".$data{"$userid","realgroup"};
                if ($data{"$domain","ServerAlias"}) {
                   $config{ServerAlias} = $data{"$domain","ServerAlias"};
                   }
                if ($data{"$domain","ServerAdmin"}) { 
                   $config{ServerAdmin} = $data{"$domain","ServerAdmin"};
                   }
                if ($data{"$domain","ScriptAlias"}) {
                   $config{ScriptAlias} = $data{"$domain","ScriptAlias"};
                   }
                if ($data{"$domain","ErrorLog"}) {
                   $config{ErrorLog} = $data{"$domain","ErrorLog"};
                   }
                if ($data{"$domain","DirectoryIndex"}) {
                   $config{DirectoryIndex} = $data{"$domain","DirectoryIndex"};
                   }
                $config{AddHandler} = "cgi-script .pl .php .php4 .php3";
                $Location{"/"} = {
                        AllowOverride   =>      "All",
                        Options         =>      "+ExecCGI"
                        };
                $config{"Location"} => %Location;
                push @{$VirtualHost{'*'}}, {%config};
                }
        }
in %data stehen dann die Configs zB. aus einer DB drin.
krispin
Posts: 216
Joined: 2003-04-14 16:30
 

Re: Apache2, config dynamisch laden

Post by krispin »

wie erwartet, raffe ich davon natzürlich garnichts...

sage nal, hast du ICQ? kannste mich bitte mal adden?

ich kann dich nicht adden...

Nr: 155636413

bzw. mich mal ansprechen?
Post Reply