VHosts mit Datenbank o.Ã?. verwalten
VHosts mit Datenbank o.Ã?. verwalten
Hallo,
ich habe vor sehr, sehr viele Domains und dementsprechend auch Subdomains auf meinem Server zu hosten.
Jetzt stellt sich das Problem mit den VHosts beim Apachen.
1. Die User sollten Subdomains, also VHosts selbst hinzufügen können (Webinterface)
2. Ich will keine 20km lange vhosts.conf haben ;-)
Eine ideale Lösung wäre also die Verwaltung der VHosts durch eine Datenbank (LDAP, MySQL o.Ã?.).
Jetzt stellt sich die Frage wie..
Google spuckt dazu nicht viel Brauchbares aus, habt ihr eine Idee oder sowas sogar schonmal gemacht?
Im Vorraus vielen Dank
-- dadark
ich habe vor sehr, sehr viele Domains und dementsprechend auch Subdomains auf meinem Server zu hosten.
Jetzt stellt sich das Problem mit den VHosts beim Apachen.
1. Die User sollten Subdomains, also VHosts selbst hinzufügen können (Webinterface)
2. Ich will keine 20km lange vhosts.conf haben ;-)
Eine ideale Lösung wäre also die Verwaltung der VHosts durch eine Datenbank (LDAP, MySQL o.Ã?.).
Jetzt stellt sich die Frage wie..
Google spuckt dazu nicht viel Brauchbares aus, habt ihr eine Idee oder sowas sogar schonmal gemacht?
Im Vorraus vielen Dank
-- dadark
-
Anonymous
Re: VHosts mit Datenbank o.Ã?. verwalten
Confixx. Da kannste die Domains und Subdomains in der Datenbank anlegen.
Re: VHosts mit Datenbank o.Ã?. verwalten
Mir geht es mehr um die Technik da ich Tools wie Confixx nicht mag
Re: VHosts mit Datenbank o.Ã?. verwalten
sowas such ich auch noch :)
es gibt da ein apache modul mod_sqlinclude oder so ähnlich, damit kann man aus einer db heraus includen
allerdings hat mir das ganze dann doch nicht so gut gefallen, da man alles nur in ein text feld reinschreibt ... alles am stück.
es gibt da ein apache modul mod_sqlinclude oder so ähnlich, damit kann man aus einer db heraus includen
allerdings hat mir das ganze dann doch nicht so gut gefallen, da man alles nur in ein text feld reinschreibt ... alles am stück.
Re: VHosts mit Datenbank o.Ã?. verwalten
mod_vhost_alias
Re: VHosts mit Datenbank o.Ã?. verwalten
aber das funktioniert doch nur wenn alle vhosts die gleichen einstellungen haben ... oder?
Re: VHosts mit Datenbank o.Ã?. verwalten
Jein. Bei einzelnen Vhosts kann man keine Einstellungen machen, aber könnte mod_vhost_alias mehrere male einbinden um verschiedene Gruppe zu erzeugen, z.B. mit PHP/CGI, ohne etc
-
deanwickert
- Posts: 77
- Joined: 2003-05-13 23:20
- Location: Lahnstein
- Contact:
Re: VHosts mit Datenbank o.Ã?. verwalten
Dann lies dir auch bitte diesen Artikel aus der 1&1 FAQ mal durch:dadark wrote:Hallo,
ich habe vor sehr, sehr viele Domains und dementsprechend auch Subdomains auf meinem Server zu hosten.
http://server.1und1.com/root_server/conf/8.html :!:
Re: VHosts mit Datenbank o.Ã?. verwalten
und was hat das mit der frage nach einem datenbank backend zu tun? :)
Re: VHosts mit Datenbank o.Ã?. verwalten
Das frage ich mich auch.
Außerdem sollte man nicht immer allen Scheiß uneingeschränkt glauben.
grrm.
Die gehen von der Standardnstallation mit Confixx etc aus ;-)
---
Wo ich grad dabei bin.. Noch eine Frage:
Ich hab gehört der Apache 2.0 kann Vhosts ohne Neustart übernehmen?
Stimmt das?
Außerdem sollte man nicht immer allen Scheiß uneingeschränkt glauben.
grrm.
Die gehen von der Standardnstallation mit Confixx etc aus ;-)
---
Wo ich grad dabei bin.. Noch eine Frage:
Ich hab gehört der Apache 2.0 kann Vhosts ohne Neustart übernehmen?
Stimmt das?
Re: VHosts mit Datenbank o.Ã?. verwalten
Nativ wird Apache VHosts aus mySQL eher nicht unterstützen, jedenfalls im Moment nicht. Aber wo ist das Problem - ihr legt die Tabellen in der Datenbank an und schreibt euch eben das PHP/Perl-Script, dass ihr per Cron aufrufen oder bei Bedarf von einem anderen Script anstoßen lasst.
Re: VHosts mit Datenbank o.Ã?. verwalten
Genau diesen Lösungsweg über ein Skript bin ich auch gegangen, funktioniert im Grunde super:
Ich frage den Apache nach dem neuschreiben (aus einer db) ab, ob die Konfiguration passt:
(Achtung, komische Pfade.)
Problem ist, der Apache startet nicht, wenn eventuelle Pfade z.B. für Logs nicht existieren. Das sollte Dein Skript dann am besten überprüfen. Kannst ja vorher ein Backup machen und im Fall eines Fehlers zurückspielen oder so.
Hoffe mein Beitrag hilft bei der Entwicklung Deines Skriptes und möglichen Fallen.
MfG
Patrick
Ich frage den Apache nach dem neuschreiben (aus einer db) ab, ob die Konfiguration passt:
Code: Select all
if /sbin/apache/bin/apachectl configtest; then
#Syntax OK, restarten
/sbin/apache/bin/apachectl restart
else
#Fehler in der Konfiguration, schreibe ein mail.
/bin/php /data/admin/crons/httpdadmin_mailer.php
fi
#
Problem ist, der Apache startet nicht, wenn eventuelle Pfade z.B. für Logs nicht existieren. Das sollte Dein Skript dann am besten überprüfen. Kannst ja vorher ein Backup machen und im Fall eines Fehlers zurückspielen oder so.
Hoffe mein Beitrag hilft bei der Entwicklung Deines Skriptes und möglichen Fallen.
MfG
Patrick
Re: VHosts mit Datenbank o.Ã?. verwalten
sowas suche ich momentn auch. Da ich leider gerade bisschen faul bin sowas selber zu basten. Ich dachte an mySQL und PHP. Ein Script das einfach immer die vhosts.conf komplett neu aus der Datenbank erstellt und einen refresh des Apache auslöst. Dazu eventuell eine kleine Admin Oberfläche wo man dem User seine Domains zuweisen kann und die Anzahl der Subdomain limitieren kann. Am besten Open Source und ohne Confixx.
Alex
Alex
-
alexander newald
- Posts: 1117
- Joined: 2002-09-27 00:54
- Location: Hannover
- Contact:
Re: VHosts mit Datenbank o.Ã?. verwalten
Apache2, mod_perl und ein Perscript, welches die Konfiguration on the fly beim Start von Apache aus einer DB ausliest (Nicht zu verwechseln mit einem Script, welches vor dem Start die httpd.conf neu aufbaut)
-
Anonymous
Re: VHosts mit Datenbank o.Ã?. verwalten
Wozu die apache.conf neu erstellen lassen?
Ich habe mir sagen lassen das es mit mod_sqlinclude wunderbar klappt.
Hier kann man dann per PHP-Script auch die Ã?nderungen automatisieren welche bei vhosts geändert werden können.
Ich bin nicht so der Freund davon wenn irgendwelche Scripte an einer doch recht heiklen Config-Datei rumpfriemeln sondern lasse lieber die Config-Datei sich gewisse Bereiche aus einer Datenbank holen. Der Aufwand dürfte geringer sein.
Ich selber werde erst diese Woche oder das kommende Wochenende die Freude haben meinen Server mit dieser Datenbank-Lösung zu bearbeiten. Dann könnte ich auch etwas mehr dazu sagen.
Ich habe mir sagen lassen das es mit mod_sqlinclude wunderbar klappt.
Hier kann man dann per PHP-Script auch die Ã?nderungen automatisieren welche bei vhosts geändert werden können.
Ich bin nicht so der Freund davon wenn irgendwelche Scripte an einer doch recht heiklen Config-Datei rumpfriemeln sondern lasse lieber die Config-Datei sich gewisse Bereiche aus einer Datenbank holen. Der Aufwand dürfte geringer sein.
Ich selber werde erst diese Woche oder das kommende Wochenende die Freude haben meinen Server mit dieser Datenbank-Lösung zu bearbeiten. Dann könnte ich auch etwas mehr dazu sagen.
Re: VHosts mit Datenbank o.Ã?. verwalten
PayPal.Me/JoeUser ● FreeBSD Remote Installation
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
-
alexander newald
- Posts: 1117
- Joined: 2002-09-27 00:54
- Location: Hannover
- Contact:
Re: VHosts mit Datenbank o.Ã?. verwalten
Hm, das sieht zwar nett aus, aber einen ganzen VHost Abschnitt als ein Textfeld in einer DB ...
Re: VHosts mit Datenbank o.Ã?. verwalten
Find ich auch irgendwie etwas komisch und unpraktisch zum Handhaben. Aber das Modul wäre evtl einen Blick wert um es weiterzuentwickeln.Alexander Newald wrote:Hm, das sieht zwar nett aus, aber einen ganzen VHost Abschnitt als ein Textfeld in einer DB ...
-
alexander newald
- Posts: 1117
- Joined: 2002-09-27 00:54
- Location: Hannover
- Contact:
Re: VHosts mit Datenbank o.Ã?. verwalten
Für Apache 2:
in httpd.conf
/www/httpd/bin/vhosts.pl
Um das Prinzip darzustellen sollte es reichen. Muss dann halt noch an die Daten, Sicherheitseinschränkungen etc angepasst werden
in httpd.conf
Code: Select all
LoadModule perl_module modules/mod_perl.so
PerlModule Apache2
Include /www/httpd/bin/vhosts.pl
Code: Select all
<Perl >
use DBI;
# Dann eine DB Verbindung herstellen
# Daten einlesen und in %data speichern
foreach $domain (@domains) {
my %config = ();
my %Location = ();
$config{DocumentRoot} = $data{"$domain","DocumentRoot"};
$config{SuexecUserGroup} = $data{"$domain","userid"}." ".$data{"$domain","group"};
if ($data{"$domain","ServerAlias"}) { $config{ServerAlias} = $data{"$domain","ServerAlias"}; }
if ($data{"$domain","ScriptAlias"}) { $config{ScriptAlias} = $data{"$domain","ScriptAlias"}; }
$Location{"/"} = {
AllowOverride => "All",
Options => "+Indexes +ExecCGI",
IndexOptions => "$IndexOptions"
};
my %Directory = ();
$Directory{$config{DocumentRoot}} = {
AllowOverride => "All"
};
$config{"Directory"} = %Directory;
$config{"Location"} = %Location;
push @{$VirtualHost{'*'}}, {%config};
}
</Perl>