Von Version < 21.1 >
bearbeitet von MKO
am 29.05.2020, 17:39
Auf Version < 22.1 >
bearbeitet von MKO
am 29.05.2020, 17:55
< >
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Inhalt
... ... @@ -1,4 +1,4 @@
1 -Sollte der Anwendungsserver (z.B. Tomcat) auf welchem {{formcycle/}} installiert ist hinter einem weiteren Server z.B. einem Revers-Proxy, einem Load-Bancer oder ähnlichem betrieben werden, ist zu beachten, dass die Informationen eines Aufrufs unverändert an diesen übermittelt werden. Konkret bedeutet dies, dass sowohl der Host-Header als auch das verwendete Protokoll durch die zwischengeschalteten Server unverändert weitergereicht werden müssen. In den meisten Standardkonfigurationen ist dies jedoch nicht der Fall da die Anfragen vom zwischengeschaltenen Server entgegengenommen werden und als neue Anfrage an den Andwendungs-Server gestellt werden.
1 +Sollte der Anwendungsserver (z.B. Tomcat) auf welchem {{formcycle/}} installiert ist hinter einem weiteren Server z.B. einem Revers-Proxy, einem Load-Balancer oder ähnlichem betrieben werden, ist zu beachten, dass die Informationen eines Aufrufs unverändert an diesen übermittelt werden. Konkret bedeutet dies, dass sowohl der Host-Header als auch das verwendete Protokoll durch die zwischengeschalteten Server unverändert weitergereicht werden müssen. In den meisten Standardkonfigurationen ist dies jedoch nicht der Fall da die Anfragen vom zwischengeschalteten Server entgegengenommen werden und als neue Anfrage an den Anwendungsserver gestellt werden.
2 2  
3 3  {{figure image="proxy_de.jpg"}}
4 4  Manipulation des Hosts und des Protokolls durch einen Revers-Proxy.
... ... @@ -7,11 +7,11 @@
7 7  Der problematische Ablauf (siehe Abbildung) ist hierbei folgender:
8 8  
9 9  1. Der Benutzer ruft die URL {{code language="none"}}https://www.example.com/formcycle{{/code}} auf.
10 -1. Die Anfrage wird vom zwischengeschaltenen Server entgegengenommen und interpretiert.
11 -1. Der zwischengeschaltene Server reicht stellt eine neue Anfrage an den dafür vorgesehenen Server. Da hier jedoch ein interner Aufruf stattfindet kommt es zur Änderung der Aufruf-URL zu {{code language="none"}}http://192.168.0.1/formcycle{{/code}}. Diese URL kommt nun beim Anwendungsserver an und beinhaltet nicht mehr die benötigten Informationen welche URL vom Benutzer eigentlich aufgerufen wurde.
10 +1. Die Anfrage wird vom zwischengeschalteten Server entgegengenommen und interpretiert.
11 +1. Der zwischengeschaltete Server reicht stellt eine neue Anfrage an den dafür vorgesehenen Server. Da hier jedoch ein interner Aufruf stattfindet kommt es zur Änderung der Aufruf-URL zu {{code language="none"}}http://192.168.0.1/formcycle{{/code}}. Diese URL kommt nun beim Anwendungsserver an und beinhaltet nicht mehr die benötigten Informationen welche URL vom Benutzer eigentlich aufgerufen wurde.
12 12  
13 13  {{info}}
14 -Da {{formcycle/}} vor allem bei der Anmeldung an einem Formular die ursprünge Aufruf-URL des Benutzers interpretiert und diese ggf. nicht ermittelt werden kann, ist es nötig zwischengeschaltene Server entsprechend zu konfigurieren. Hierbei ist darauf zu achten, dass sowohl der HTTP-Header //Host// als auch das verwendete Protokoll (//HTTP //oder //HTTPS//) unverändert weitergereicht werden.
14 +Da {{formcycle/}} vor allem bei der Anmeldung an einem Formular die ursprüngliche Aufruf-URL des Benutzers interpretiert und diese ggf. nicht ermittelt werden kann, ist es nötig zwischengeschaltete Server entsprechend zu konfigurieren. Hierbei ist darauf zu achten, dass sowohl der HTTP-Header //Host// als auch das verwendete Protokoll (//HTTP //oder //HTTPS//) unverändert weitergereicht werden.
15 15  {{/info}}
16 16  
17 17  == Beispielkonfiguration Apache Proxy ==
... ... @@ -19,7 +19,7 @@
19 19  Für die beispielhafte Konfiguration eines Apache-Server welcher als Revers-Proxy agiert sind zwei Punkte relevant und z.B. in der Konfiguration der VirtualHost´s zu hinterlegen:
20 20  
21 21  1. Die Anweisung {{code language="none"}}ProxyPreserveHost On{{/code}} zum Erhalt des ursprünglich aufgerufenen //Host//-Headers
22 -1. Die Seperierung der einzelnen Protokolle und dessen Verwendung ebenso am Anwendungsserver. Dies bedeutet, dass für //HTTP// und //HTTPS// ein eigener VirtualHost benutzt wird und die Weiterleitung über das entsprechende Protokoll stattfindet.
22 +1. Die Separierung der einzelnen Protokolle und dessen Verwendung ebenso am Anwendungsserver. Dies bedeutet, dass für //HTTP// und //HTTPS// ein eigener VirtualHost benutzt wird und die Weiterleitung über das entsprechende Protokoll stattfindet.
23 23  
24 24  Diese Konfiguration ist, ebenso wie eine ggf. nötige Einstellung bei der Verwendung selbsterstellter Zertifikate, hier kurz veranschaulicht:
25 25  
Copyright 2000-2024