Hallo Forum,
ich brauch mal nen kleinen Schubs in die richtige Richtung. Bei einem Kunden habe ich die Domain a.de und b.de - beide zeigen auf die gleiche IP.
Diese IP ist ein Proxy der die Requests direkt an einen Apachen weitergibt (der Apache steht in einer DMZ on premise und der Kunde hat das zusammengebastelt).
Nun will ich dass a.de vom Apachen aus einem anderen Ordner ausgeliefert wird als b.de.
Normalerweise mach ich nun zwei Seiten (Virtual Hosts) im Apachen mit dieser config;
<VirtualHost *:80>
ServerName a.de
DocumentRoot /var/www/a
</VirtualHost>
<VirtualHost *:80>
ServerName a.de
DocumentRoot /var/www/b
</VirtualHost>
Afaik matcht der Apache nun den Host-Header im http request gegen den ServerName und weiß nun wo er hin muss. ABER der Proxy sendet sich im Host-Header - und den eigentlichen Host im "X-Forwarded-Host" mit.
GET /la.html HTTP/1.1
Host: 192.168.0.10
Upgrade-Insecure-Requests: 1
X-Forwarded-Proto: https
X-Forwarded-For: 91.49.174.137
X-Forwarded-Host: www.a.de
X-Forwarded-Server: www.a.de
Connection: Keep-Alive
Wie kann ich nun ServerName sagen dass es nicht gegen den Host-Header sondern gegen den X-Forwarded-Host-Header prüfen soll?
Trotz einiger Google Suchen find ich immer nur wie ich den Apachen als Proxy konfiguriere und ihn dazu bringe den X-Forwarded-Host Header zu setzen. Nicht mein Problem dass ich abhängig von diesem Header meinen virtuellen Host (und damit den Ordner aus dem die Seite geholt wird) auswählen will.
Das kann doch jetzt nix außergewöhnliches sein, oder?
Thomas