Jump to content
Froxlor Forum
  • 0

[Apache2] vhosts werden ignoriert


df8oe

Question

Ich habe nun schon mehrere Froxlors aufgesetzt und es laufen auch schon verschiedene mit LetsEncrypt etc. einwandfrei. Aber bei diesem Exemplar gibt es irgendein DAU Problem - und ich sehe den Wald vor lauter Bäumen nicht..

Das Problem ist: egal, welche Domain ich aufrufe - ich lande immer im "default Docroot" /var/www/html. Die vhosts werden von Froxlor korrekt angelegt. Es gibt auch bei Überprüfung der Konfig vom Apachen kein Problem. Auch die Logs (die eigentlich in "eigene Logdateien" geschrieben werden sollen) landen alle im Standardlog /var/log/apache2. In den vhost-Einstellungen steht der Logpfad aber korrekt drin. Es sieht so aus, als wenn der Apache die vhosts komplett ignoriert.

Es handelt sich um ein Jessie 8.8 mit Apachen 2.4. Es kann doch sicher nicht daran liegen, dass ich /var/customers auf einer eigenen Partition habe und lediglich per Symlink zur Verfügung stelle? Wäre komisch - denn neue Ordner für Docroots werden problemlos von Froxlor erstellt. Nur der Apache ruft (egal, welche Domain ich aufrufe) - IMMER /var/www/html auf.

Das ist mit Sicherheit kein Fehler von Froxlor - das ist irgendwas total triviales - aber wie gesagt: im Moment sehe ich den Wald vor lauter Bäumen nicht. Und selbst Vergleiche mit einem der anderen Server, bei denen alles fehlerfrei läuft. haben mir nicht weitergeholfen...

Gruß

df8oe

Link to comment
Share on other sites

10 answers to this question

Recommended Posts

hast du vllt ipv4 und ipv6 aber ipv6 nicht eingerichtet und zu hause eine ipv6 anbindung? Oder sind in froxlor ipv4 und ipv6 adressen angelegt und den domains zugewiesen? er landet zumindest auf dem server, aber ich nehme an, der apache findet keinen "passenden" vhost, und wenn es nciht der domain name ist, liegt es meist an der IP

Link to comment
Share on other sites

In der Tat liegt der Hase hier im Pfeffer. An ipv6 hatte ich überhaupt nicht gedacht - alle meine anderen Server sind älter und laufen noch unter ipv4...

Also ifconfig zeigt mir eine LAN-ipv4 Adresse und eine ipv6 Adresse. Die ipv4-Adresse mit der der Server von Außen zu erreichen ist ist überhaupt nicht dabei.

Ich habe noch nie so eine Konfiguration gehabt - also bin ich in der Hinsicht "nur jetzt noch" dumm :).

 

Ich habe also eine neue IP/Port Kombination eingerichtet mit der ipv6 Adresse. Dann habe ich (der besseren Forensik wegen) der ipv4 und der ipv6 IP/Port-Kombination eigene (unterschiedliche) Docroots gegeben und dort was Sinniges reingelegt. Wobei mir hier die Frage kommt, was denn die ipv4-Adresse, die ich hier eintragen muss, denn eigentlich ist. Ist es die, mit der ich den Server von Außen per ipv4 erreichen kann? Oder ist es die ipv4-Adresse, die mir ifconfig zeigt? Ich habe zunächst die "externe ipv4-Adresse" gewählt - mit großem Fragezeichen im Kopf...

Es gibt jetzt also außer den vhosts der Domains (deren Docroots alle auf /var/customers/webs/... zeigen) einen froxlor_ipandport_ipv4.conf und einen froxlor_ipandport_ipv6.conf (deren Docroot ebenfalls unique ist und NICHT /var/www/html). Und dann gibt es noch den 000-default.conf - dort ist der VirtualHost *:80 drin. Dessen Docroot zeigt auf /var/www/html.

Ich habe die IP-Adresse der Domains auf die neu engelegte ipv6 "umgehakt". In den vhosts steht jetzt auch alles gemäß ipv6 drin - aber aufgerufen wird, egal, ob ich mit einer der Domains oder mit der ipv4-Adresse von Außen aufrufe, immer nur /var/www/html.

Ich habe übrigens nur eine ipv4 Anbindung - das sollte hier aber nicht das Problem darstellen. Irgendwie findet der Apache trotz korrekter Virtual Host Namen und ipv6 Adresse den passenden Eintrag immer noch nicht. Seltsamerweise fällt er auf keine der beiden ip/Port-Kombinationen zurück, sondern ganz zurück auf die den default vhost...

Hier muss irgendwas grundlegend anders gemacht werden als bei reinem ipv4 - nur was?

Gruß

df8oe

Link to comment
Share on other sites

Hatte ich auch schon getestet - keine Wirkung. ich falle mit jeder http-Anfrage in /var/www/html.

Hier die Ausgabe von apache2ctl -S:

##############################

VirtualHost configuration:
123.234.123.234:80     hullewulle.ballaballa.de (/etc/apache2/sites-enabled/10_froxlor_ipandport_123.234.123.234.80.conf:5)
[fe60::6af0:433f:fb26:ba42]:80 is a NameVirtualHost
         default server  hullewulle.ballaballa.de (/etc/apache2/sites-enabled/10_froxlor_ipandport_fe60::6af0:433f:fb26:ba42.conf:5)
         port 80 namevhost hullewulle.ballaballa.de (/etc/apache2/sites-enabled/10_froxlor_ipandport_fe60::6af0:433f:fb26:ba42.conf:5)
         port 80 namevhost my-first-domain.de (/etc/apache2/sites-enabled/35_froxlor_normal_vhost_my-first-domain.conf:6)
         port 80 namevhost my-second-domain.de (/etc/apache2/sites-enabled/35_froxlor_normal_vhost_my-second-domain.de.conf:6)
         port 80 namevhost my-third-domain.de (/etc/apache2/sites-enabled/35_froxlor_normal_vhost_my-third-domain.de.conf:6)
                 alias www.my-third-domain.de
ServerRoot: "/etc/apache2"
Main DocumentRoot: "/var/www/html"
Main ErrorLog: "/var/log/apache2/error.log"
Mutex default: dir="/var/lock/apache2" mechanism=fcntl 
Mutex mpm-accept: using_defaults
Mutex watchdog-callback: using_defaults
Mutex rewrite-map: using_defaults
PidFile: "/var/run/apache2/apache2.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="www-data" id=33
Group: name="www-data" id=33

##############################

In keinem der vhosts steht jetzt noch /var/www/html drin - der 000-default ist jetzt deaktiviert. Trotzdem fällt er immer wieder auf /var/www/html zurück. Mit grep in /etc/apache2 gesucht, enthalten nur die "sites-available" 000-default.conf und default-ssl.conf diesen Pfad (und die beiden sind disabled).

Er findet keinen passenden vhost und fällt zurück auf fest einkompilierten (??) Pfad...

Gruß

df8oe

Link to comment
Share on other sites

Du hast auf jeden Fall Recht - es *ist* ein IP-Problem. Und mittlerweilen denke ich, es hat mit ipv6 nichts zu tun - es ist eine sehr seltsames Zuweisung durch den Rootserverhoster.

Ich bin mittlerweilen auf drei ipv4 Adressen gekommen

1) via ifconfig erhalte ich eine IP, die nur in LANs gilt (10.0.x.y)

2) der Hoster hat mir mitgeteilt, dass meine IP a.b.c.d ist

3) rufe ich von diesem Server aus via Lynx eine Seite meiner anderen Server auf, dann sehe ich dort die IP e.f.g.h

Mache ich auf dem fraglichen Server einen traceroute auf eine dieser drei IPs, dann komme ich bei jeder mit einer Zeile am Ziel an. Bei IP 1) ist die Zeit < 0.1ms, bei den beiden anderen sind es ~0.7ms.

Keine der drei IP-Adressen finde ich irgendwo in einer Datei in /etc. In /etc/network/interfaces ist eth0 nicht aufgeführt - weder mit statischer IP noch mit dhcp.

Die vorhandene Installation ist (bis auf die Installation von Froxlor samt nötigen OPaketen wie dovecot etc.) die vom Hoster vorgefertige Startinstallation.

Am liebsten würde ich den Loglevel vom Apachen soweit raufsetzen, dass er mir komplett mitloggt, was er versucht zu finden (und ja offensichtlich nicht findet).

Dazu kommt, dass bei diesen vielen IP-Adressen ich auch nicht wirklich weiß, as ich bei Froxlor in den Systemeinstellungen denn nun als Haupt-IPadresse eintragen muss. Ich möchte mich ja ungern von Froxlor selbst aussperren :)

Gruß

df8oe

Link to comment
Share on other sites

ist halt schwer zu sagen ohne die kiste zu sehen, vorallem zwecks network config, aber wenn du da via ifconfig nur eine 10.0.x.y ip siehst und keine externe ip (angeblich a.b.c.d) dann stimmt da wohl was nicht, wie connectest du denn via ssh auf den server? Du musst ja irgendwas angeben als server/ip? Keine network config ist auch eher ungewöhnlich, vllt sprichst du da nochmal mit deinem anbieter?!

Link to comment
Share on other sites

Es ist wirklich sehr ungewöhnlich. Und ich habe sowas noch nicht gesehen. Ich möchte mich zwar nicht als "Linux-Vollprofi" bezeichnen, aber ich arbeite seit fast 20 Jahren ausschließlich unter Linux (Server sowieso und auch alle Arbeitsplatzrechner). Wie ich mit der externen IP auf dem Server lande, ist mir ein Rätsel - aber ich lande dort.

Ich habe das ganze zum Funktionieren gebracht (aber verstehen tue ich es nicht):

Die externe IP darf nirgendwo in Froxlor eingetragen werden. Weder als "Haupt-IP" noch irgendwie als weitere IP. Da darf überall nur die interne IP (die 10.0.x.y) rein. Dann den Apachen neu starten (reload hat nicht gereicht) - und jetzt geht es.

Ich werde erstmal weitermachen und die anderen Dienste testen - und dann interviewe ich nochmal den Anbieter. Sowas grundlegendes muß ich einfach verstehen - sonst bleibt da ein ungutes Gefühl.

Ich danke Dir auf jeden Fall für den Tipp mit der IP und deiner Hilfe überhaupt. Es war zwar nicht ipv4/ipv6 - aber durch die sehr seltsame IP Zuweisung hatte ich die externe (hier falsche) IP benutzt.

Gruß

df8oe

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...