Weiterleitung an eine andere lokale Domain (Apache): Unterschied zwischen den Versionen
Die Seite wurde neu angelegt: „Manchmal ist es erforderlich, Http(s)-Anfragen von außen an einen Server, der nur lokal erreichbar ist, weiter zu leiten. In dem her beschriebenen Beispiel, ist die Webseite <code>test.<domain></code> sowohl lokal, als auch von außen, unter dem selben DNS-Namen erreichbar. Im folgenden Beispiel habe ich das durch eine Subdomain <code>lokal.<domain></code> gelöst. Der von außen erreichbare Server nimmt dazu die Anfragen für <code>test.<domain></code>…“ |
Keine Bearbeitungszusammenfassung |
||
| Zeile 1: | Zeile 1: | ||
== Allgemein == | |||
Manchmal ist es erforderlich, Http(s)-Anfragen von außen an einen Server, der nur lokal erreichbar ist, weiter zu leiten. | Manchmal ist es erforderlich, Http(s)-Anfragen von außen an einen Server, der nur lokal erreichbar ist, weiter zu leiten. | ||
In dem her beschriebenen Beispiel, ist die Webseite <code>test.<domain></code> sowohl lokal, als auch von außen, unter dem selben DNS-Namen erreichbar. | In dem her beschriebenen Beispiel, ist die Webseite <code>test.<domain></code> sowohl lokal, als auch von außen, unter dem selben DNS-Namen erreichbar. | ||
| Zeile 56: | Zeile 58: | ||
</VirtualHost> | </VirtualHost> | ||
</pre> | </pre> | ||
Zurück zu [[Apache_HTTP_(Linux)#Weiterleitung_an_einen_anderen_Server|Apache HTTP]] | |||
Aktuelle Version vom 1. November 2026, 09:27 Uhr
Allgemein
Manchmal ist es erforderlich, Http(s)-Anfragen von außen an einen Server, der nur lokal erreichbar ist, weiter zu leiten.
In dem her beschriebenen Beispiel, ist die Webseite test.<domain> sowohl lokal, als auch von außen, unter dem selben DNS-Namen erreichbar.
Im folgenden Beispiel habe ich das durch eine Subdomain lokal.<domain> gelöst. Der von außen erreichbare Server nimmt dazu die Anfragen für test.<domain> entgegen und leitet sie an test.lokal.<domain> weiter.
Für das Erstellen einer Subdomain siehe auch Subdomain in Bind.
Weiterleitender Server
Der DNS-Name test.<domain> muss auf den weiterleitenden Server aufgelöst werden und test.lokal.<domain> auf den lokalen Server. In dem folgenden Beispiel ist die weitergeleitete Verbindung zum lokalen Server auch verschlüsselt.
Zuerst müssen die erforderlichen Module aktiviert werden:
sudo a2enmod proxy sudo a2enmod proxy_html sudo a2enmod proxy_http
Danach eine Konfiguration nach folgenden Muster anlegen:
<VirtualHost *:443>
ServerName test.<domain>
SSLProxyEngine On
ProxyPass / https://test.local.<domain>/
ProxyPassReverse / https://test.local.<domain>/
SSLProxyCheckPeerName off
SSLProxyCheckPeerCN off
SSLEngine on
SSLCertificateFile /etc/ssl/certs/test.crt
SSLCertificateKeyFile /etc/ssl/private/apache.key
</VirtualHost>
Da das SSL-Zertifikat am Zielserver eigentlich für test.<domain> ausgestellt wurde, muss noch die Validierung des Namen deaktiviert werden. Dazu dienen folgende Zeilen in obigen Beispiel:
SSLProxyCheckPeerName off SSLProxyCheckPeerCN off
Zielserver
Der Zielserver muss in der .conf den Namen test.lokal.<domain> als Aliasnamen angegeben haben.
<VirtualHost *:443>
ServerName test.<domain>
ServerAlias test.local.<domain>
...
</VirtualHost>
Zurück zu Apache HTTP