httpd-users-de mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Oliver Siegmar <maili...@ultimate-systems.de>
Subject Re: AW: Massenhosting
Date Fri, 19 Apr 2002 09:48:40 GMT


--On Freitag, 19. April 2002 11:35 +0200 Arne Blankerts 
<ABlankerts@freepoint.de> wrote:

> On Fri, 2002-04-19 at 11:21, Oliver Siegmar wrote:
>> Ob Apache nun eine Konfigurationsdatei aus Tausenden von Zeilen einlesen
>> muss, oder einen einzelnen Eintrag um diesen anschließend im Speicher zu
>> vervielfältigen und mit simplen regexp (anhand der Verzeichnisnamen in
>> einem bestimmten Unterverzeichnis) zu modifizieren, dürfte für die
>> Programmierer ja nun auch nicht höchste Kunst darstellen. :(
>
> Erm... da liegt ein kleiner Denkfehler vor. *JEDES* logfile bedeuted ein
> offenes Filehandle, das auch nicht wieder geschlossen wird bis der
> apache vollständig beendet wird.
agree

> Bei mod_vhost_alias wird dies zu einem Problem. Es müsste zur Laufzeit
> überprüft werden, ob bereits ein handle für den gesuchten host
> exisitert, wenn nicht, muss es geöffnet werden..  Wenn du den Server
Warum? Es würde vollkommen reichen, wenn der Apache bei einem restart das
Verzeichnis in dem die VHosts liegen neu einliest und dann die 
entsprechenden
Filehandles öffnet.

Wenn der Apache einfach folgendes (sinngemäß) intern machen könnte:


#!/bin/sh
for i in /var/www/*
do
    echo "<VirtualHost *>"
    echo "    ServerName $i"
    echo "    DocumentRoot /var/www/$i"
    echo "    CustomLog "|/usr/sbin/cronolog 
/var/www/$i/logs/%Y/%B/access%d.log" combined"
    echo "    ErrorLog "|/usr/sbin/cronolog 
/var/www/$i/logs/%Y/%B/error%d.log"
    echo "</VirtualHost>"
done



Natürlich ohne Schleife und echo usw...nur zum Verbildlichen...
Könnte also z.B. so aussehen:

<VirtualHost *>
    WebDir /var/www/*
    ServerName %WebDir
    DocumentRoot /var/www/%WebDir
    CustomLog "|/usr/sbin/cronolog 
/var/www/%WebDir/logs/%Y/%B/access%d.log" combined
    ErrorLog "|/usr/sbin/cronolog /var/www/%WebDir/logs/%Y/%B/error%d.log"
</VirtualHost>



...und da muss ja wirklich nichts automatisch (beim Aufruf von Seiten) 
passieren. Nur ein mal bei aufrufen parsen und im Speicher VHosts 
erstellen. Das wär's schon schon...

Mime
View raw message