Apache Leitet Subdomain nicht weiter (Mailcow)?
Hey,
das Problem habt ihr sicherlich aus der Frage entnommen.
System:
Debian 9
Apache2
Hier sind meine Configs:
Vielen Dank!
Ist mail.x wirklich deine Domain?
Nein natürlich nicht.
Beschreibe mal bitte genauer, was du erwartest und was tatsächlich passiert.
Ich vermute, dass der Apache keine Weiterleitung machen soll, sondern einen proxypass. was passiert da?
Ich erwarte das eine Weiterleitung auf MailCow erfolgt. Statt weitergeleitetet zu werden. Komme ich auf die Homepage
2 Antworten
Nein natürlich nicht.
Dann liegt das Problem ja eigentlich auf der Hand: Du definierst eine Konfiguration für die Domain mail.x. Wenn du damit auch nicht die Website aufrufst, wird deine Konfiguration auch nicht angewendet und somit dein Aufruf auch nicht geproxied.
Copy-Paste heisst nicht, dass das direkt einfach so auf magische Weise funktioniert. Du musst also sowohl in deiner VirtualHost Config als auch in der Mailcow Config den korrekten Hostname/die korrekte Domain angeben.
Ausserdem solltest du dir mal überlegen, dein Debian auf Version 11 zu aktualisieren. Debian 9 wird demnächst nicht mehr unterstützt.
Das hättest du auch gleich sagen können... Deine Datenbankzugangsdaten sind aber hoffentlich auch zensiert?
Im Prinzip brauchst du nur diese Zeilen:
<VirtualHost mail.x:80>
ServerName mail.x
ServerAlias autodiscover.mail.x
ServerAlias autoconfig.mail.x
ProxyPass / http://127.0.0.1:8080/
ProxyPassReverse / http://127.0.0.1:8080/
ProxyPreserveHost On
</VirtualHost>
<VirtualHost mail.x:443>
ServerName mail.x
ServerAlias autodiscover.mail.x
ServerAlias autoconfig.mail.x
ProxyPass / http://127.0.0.1:8080/
ProxyPassReverse / http://127.0.0.1:8080/
SSLCertificateFile opt/mailcow-dockerized/data/assets/ssl/cert.pem
SSLCertificateKeyFile opt/mailcow-dockerized/data/assets/ssl/key.pem
ProxyPreserveHost On
</VirtualHost>
Beachte, dass das hier übrigens keine Weiterleitung, sondern halt eben ein Proxy ist. Bei einer Weiterleitung müsste der Client selbst auf Port 8080 wechseln.
Diese Datei sieht nicht unbedingt falsch aus:
Aber welche Datei ist das genau? Bitte mal den kompletten Pfad angeben.
Diese sollte im Pfad /etc/apache2/sites-enabled liegen und der Dateiname die Endung .conf haben.
Der ganz richtige Weg wäre es, die Datei unter
/etc/apache2/sites-available anzulegen und mit dem Befehl
a2ensite $dateiname
die Konfiguration zu aktivieren. Das legt dann einen Link in /etc/apache2/sites-enabled an.
danach noch ein
systemctl restart apache2
Ich hab einfach die Domain zensiert...