Szenario 4: Kommunikation mit Protokollwechsel via reversen Proxy
Wenn HTTPS im Internet verwendet wird, kann HTTP vom reversen Proxy zum Server eingesetzt werden. In diesem Sonderfall ist die Generierung absoluter URLs sehr interessant, insbesondere für spezielle Ressourcen wie Rückgabe-Adressen, die mit dem externen Protokoll übereinstimmen, das im Internet verwendet wird. Wenn die Programmierschnittstelle aufgerufen wird, ohne dass ein Protokoll festgelegt ist und stattdessen nur ein Server-Objekt angegben ist, dann wird das aktuell eingesetzte Protokoll für die Entscheidung über den zu verwendenden Namen und Port verwendet. In solch einem Fall ist normalerweise nur ein Eintrag ausreichend. Das zu verwendende Protokoll wird auch über den API-Aufruf zurückgegeben.

MANDT |
SORT_KEY |
PROTOCOL |
APPL |
HOST |
PORT |
|---|---|---|---|---|---|
100 |
010 |
HTTPS |
* |
http://WWW.SAP.COM |
443 |
Hierbei ist es wichtig, dass der reverse Proxy im eingehenden Request das aktuelle Protokoll einsetzt, das im Internet-Abschnitt des Requests verwendet wird. Der Web Dispatcher übernimmt diese Information in ein Header-Feld namens ClientProtocol, wenn die Option wdisp/add_client_protocol_header
= true gesetzt ist. Mit einem Apache reversen Proxy kann dies über RequestHeader
mit ClientProtocol HTTPS
erreicht werden.