Hallo Leute,
Ich bin jetzt schon seit einigen Tagen an folgender Sache dran.
Ich habe ein ein TSV-File in dem steht die Domain, der Pfad und der User des Vhosts.
Nun will Ich diese mithilfe von mod_perl in eine recht spezielle Standart-Konfiguraton pumpen.
Dazu habe Ich schonmal folgende Perl-Section geschrieben:
Ein Restart bringt bei mir dann auch keine Fehler.PHP-Code:open(VHOSTS,"<","./scripts/vhosts_file");
my @lines = <VHOSTS>;
close(VHOSTS);
foreach(@lines)
{
my ($vhost_name, $vhost_path, $suexec_user) = split(/\t/);
# get the username (groupname = username)
$suexec_user = getpwuid($suexec_user);
#remove trailing / from path
$vhost_path =~ s/\/$//;
$VirtualHost{"$vhost_name:80"} = {
ServerAlias => "$vhost_name:80",
ServerName => "www.$vhost_name:80",
DocumentRoot => $vhost_path,
SuexecUserGroup => "$suexec_user $suexec_user",
Directory => {
$vhost_path => {
FCGIWrapper => "/srv/www/$suexec_user/conf_$suexec_user .php",
FilesMatch => {'\.php$' => {
SetHandler => 'fcgid-script',
},
},
Options => '+ExecCGI Indexes FollowSymLinks',
AllowOverride => 'AuthConfig Fileinfo',
DirectoryIndex => 'index.php',
order => 'deny,allow',
Allow => 'from all',
},
},
};
}
Und einliefert folgendes( hab die IP und die Domains verändert):Code:apache2 -S
DomainA ist eine Domain, welche normal durch ein statisches Config-File konfiguriert wurde.
DomainB ist die Domain, welche in dem TSV-File steht (vorerst nur eine zum testen)
Wenn Ich nun aber auf die DomainB zugreife, komme Ich immer nur auf den Standart-Vhost (DomainA) alle anderen(statisch konfigurierten) VHosts funktionieren einwandfrei.Code:1.2.3.4:80 is a NameVirtualHost default server DomainA.tld (/etc/apache2/sites-enabled/000-default.conf:149) port 80 namevhost DomainA.tld (/etc/apache2/sites-enabled/000-default.conf:149) port 80 namevhost www.DomainB.de (mod_perl:1) port 80 namevhost www.DomainB.de (mod_perl:1) port 80 namevhost dev.DomainA.tld (/etc/apache2/sites-enabled/evo_dev.conf:3) ...
Es scheint als würde er die Config der Perl Section nicht richtig ziehen...
Aber Ich komme einfach nicht dahinter woran es liegt...
Ich hänge etzt schon seit 3 Tagen an diesem Problem. nd hab mich dazu auch schon halb tot gegooglet.
Ich hoffe Ihr könnt mir vieleicht weiterhelfen und dass Ich das Problem genug beschrieben habe.
Schonmal Danke im vorraus.
Grüße Shogoki
+ Antworten
Ergebnis 1 bis 11 von 11
Dynamische VHOSTS mit Apache2 und mod_perl
Diskussion über Dynamische VHOSTS mit Apache2 und mod_perl in Rootserver - Vserver - Webspace der Kategorie Fachliches; Hallo Leute, Ich bin jetzt schon seit einigen Tagen an folgender Sache dran. Ich habe ein ein TSV-File in dem ...
- 10.08.2011 09:24 #1Reg.-Benutzer
- Reg.-Datum
- 18.08.2008
- Beiträge
- 42
Dynamische VHOSTS mit Apache2 und mod_perl
- 10.08.2011 14:33 #2Reg.-Benutzer
- Reg.-Datum
- 05.04.2009
- Beiträge
- 549
Hi,
via Perl-Skript sind dyn. Vhosts schon ziemlich krank, eventuell ist das eine Alternative für dich: Dynamically Configured Mass Virtual Hosting - Apache HTTP Server
Gruß
axxisZWNobyAiSGVsbCB5ZWFoLCBiYXNlNjQiIHwgYmFzZTY0ClNHVn NiQ0I1WldGb0xDQmlZWE5sTmpRSw==
- 10.08.2011 15:22 #3Reg.-Benutzer
- Reg.-Datum
- 18.08.2008
- Beiträge
- 42
Hallo axxis,
Danke erstmal für die Antwort.
Auch wenn diese mir nicht wirklich weiterhilft.
Ich kenne die von dir verlinkte Seite.
Das ist leider keine Alternative für mich, da mir da einige Funktionen fehlen.
Ganz wichtig z.B. Fällt mir da spontan die Einstellung des Suexec-Users ein, welcher für dast jeden VHOST ein anderer ist.
Vieleicht findet, sich ja noch jemand er mir bei meinem eigentlichen Problem weiterhelfen kann.
- 11.08.2011 12:46 #4Reg.-Benutzer
- Reg.-Datum
- 05.04.2009
- Beiträge
- 549
Hi,
Versuch Nr.2
Du nutzt namensbasierte VHosts.
Ohne dein vhosts_file zu kennen, aber ein Name hat in der VirtualHost-Direktive (bei namensbasierten VHosts) imho nichts zu suchen.
Habs kurz statisch getestet, sowie du einen Namen in der Direktive setzt, wird die Anfrage durch den Default-VHost beantwortet.PHP-Code:$VirtualHost{"$vhost_name:80"} = {
Gruß
axxisZWNobyAiSGVsbCB5ZWFoLCBiYXNlNjQiIHwgYmFzZTY0ClNHVn NiQ0I1WldGb0xDQmlZWE5sTmpRSw==
- 11.08.2011 12:59 #5Reg.-Benutzer
- Reg.-Datum
- 18.08.2008
- Beiträge
- 42
Hallo,
Danke für die erneute Antwort.
Leider hilft mir diese auch nicht weiter.
Hier mal ein Blick in mein vhosts_file wie es in meinem Beispiel von oben aussehen würde:
Also die Domain, der Pfad und dann eine UID.Code:DomainB.de /pfad/zur/docroot/DomainB 5002
Und eine Domain in einer VHOST-conf wird aufgelöst.
Also in meinen statischen VHOST-Configs siehts auch so aus überall und es klappt.
also vorraussetzung ist dann natürlich, dass die Domains vom Server aus auch auf die eigenen IP aufgelöst werden können.
- 11.08.2011 13:40 #6Reg.-Benutzer
- Reg.-Datum
- 05.04.2009
- Beiträge
- 549
Hi,
Dumm gelaufenLeider hilft mir diese auch nicht weiter.
Dass der Apache DNS kann ist zwar richtig, aber dennoch sollte man davon absehen! Issues Regarding DNS and Apache - Apache HTTP Server
Ansonsten bin ich raus, in der Theorie reicht Apache eine Anfrage nur an den Default-VHost, wenn ServerName/-Alias matchen (was passieren kann, wenn eben die restlichen VHosts nicht matchen).
Wenn du die Lösung hast, würde sie mich dennoch brennend interessieren.
Gruß
axxisZWNobyAiSGVsbCB5ZWFoLCBiYXNlNjQiIHwgYmFzZTY0ClNHVn NiQ0I1WldGb0xDQmlZWE5sTmpRSw==
- 11.08.2011 13:47 #7Reg.-Benutzer
- Reg.-Datum
- 18.08.2008
- Beiträge
- 42
Also, da Ich ja nichts unversucht lasse (und es wie du auch erwähnt hast nciht gerade Best Practiceist ), habe Ich auch mein Skript mal auf die IP umgemünzt.
Leider hat das auch nicht den gewünschten Erfolg gebracht.
Des weiteren habe Ich auch noch versucht den mit mod_perl konfigurierten VHOST als default Host zu setzen.
Im apache2 -S passt das dann auch.
Aber in der Realität greift die Einstellung auch nicht...
Es scheint tatsächlich als würde mein Apache, die Konfiguration ignorieren...
Und das, obwohl im apache2 -S alles korrekt angezeigt wird.
Das ist schon alles sehr merkwürdig...
- 11.08.2011 22:27 #8Reg.-Benutzer
- Reg.-Datum
- 24.11.2010
- Beiträge
- 183
Hast du deine Einstellungen denn schon einmal von Hand eingetragen und getestet?
Wenn die Einstellungen dann nicht funktionieren brauchst du bei dem Skript erst einmal nicht weiter zu machen.
- 11.08.2011 23:08 #9
Moderator Java
- Reg.-Datum
- 24.07.2007
- Ort
- auf nem Berg
- Beiträge
- 7.424
Also soweit wie ich weiß kann Apache auch VHost aus einem LDAP einbinden, wäre es evtl sinnvoller die ganzen Daten in das LDAP zu schieben und von dort dann einzubinden. Und via Script kannst Du auch direkt in den LDAP schreiben. Das Modul dazu müsste "mod_vhost_ldap" heißen.
We can only see a short distance ahead, but we can see plenty there that needs to be done. (Alan Turing)
http://flashpixx.de
- 12.08.2011 08:54 #10Reg.-Benutzer
- Reg.-Datum
- 18.08.2008
- Beiträge
- 42
jaa, Ich habe die Einstellungen ja aus einem statisch konfiguriertem VHOST übernommen.
Das setzt aber ein bestehendes LDAP vorraus. Ich nutze auf meinem Webserver kein LDAP.
Zitat von flashpixx
- 05.10.2011 22:46 #11Reg.-Benutzer
- Reg.-Datum
- 18.08.2008
- Beiträge
- 42
Ich hoffe, das stört jetzt niemanden wenn Ich hier auf den alten Thread antworte.
Aber, da Ich mich heute nochmal mit dem Thema befasst habe und beim googlen meinen eigenen Thread (diesen hier) gefunden habe hab ich mir gedacht Ich poste mal meine Lösung hier. So hilft es hoffentlich jemanden der ein ähnliches Problem hat.
Also Ich habe jetzt eine fuktionierende Lösung für mich gefunden. Die ist zwar noch nicht top ausgereift aber naja..
Also eine wichtige Rolle spielt dabei das Modul mod_macro womit man Makros in der Apache Konfig definieren kann.
Dann kann man damit ein Makro für die VHOSTS mit den entsprechenden variablen definieren.
Damit Ich dann noch das TSV-File als Basis nehmen kann habe Ich ein kleines perlscript gebastelt, welches dieses ausliest und für jeden VHOST eine zeile mit dem aufruf für das Macro erstellt.Diese Zeilen schreibt das Script dann in ein Apache-Config file.Code:Use vhost vhost_name vhost_path suexec_user_id
Das Skript wird dann per Cron alle 5min ausgeführt.
Wer es noch ein wenig genauer möchte kann es demnächst auch hier nachlesen.
Ich hoffe das war ein wenig hlfreich.
Aktive Benutzer
Aktive Benutzer
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
Ähnliche Themen
-
VHosts aum VServer
Von Crazy_Bug im Forum Rootserver - Vserver - WebspaceAntworten: 7Letzter Beitrag: 19.11.2007, 22:06 -
Server mod_perl Einstellung?
Von INlife im Forum Rootserver - Vserver - WebspaceAntworten: 0Letzter Beitrag: 01.06.2005, 01:36 -
Apache2 und mod_perl
Von dr.disk im Forum Rootserver - Vserver - WebspaceAntworten: 3Letzter Beitrag: 23.09.2004, 18:49 -
mod_perl: Apache Startupskript
Von dr.disk im Forum Skript- und WebserverprogrammierungAntworten: 0Letzter Beitrag: 17.12.2003, 16:00 -
Merkwürdige Dinge bei Apache mit VHOSTS
Von captainhook im Forum Linux + UnixAntworten: 0Letzter Beitrag: 02.06.2001, 12:11
Die häufigsten Suchbegriffe für diese Seite:
Bisher noch keine Treffer von einer Suchmaschine

LinkBack URL
About LinkBacks
Zitieren