Konfiguration des Web Dispatcher Server Port 
Business Case:
Sie möchten den Web Dispatcher Server Port einrichten und brauchen dazu Informationen über die Konfigurationsmöglichkeiten des Profilparameters icm/server_port_<xx>. Mit diesem Parameter wird der für ein Protokoll (PROT) zu benutzende Web Dispatcher Server
Port bzw. Service (PORT) spezifiziert. Zusätzlich können weitere Eigenschaften des Services festgelegt werden, wie:
TIMEOUT und PROCTIMEOUT-Optionen
EXTBIND: Verwenden eines externen Bindeprogramms
HOST: Port nicht an alle Rechnernamen binden
SSLCONFIG: SSL-Konfiguration
VCLIENT: Vorweisen eines X.509 Zertifikates
ACLFILE: Verwenden von Zugriffskontrolllisten
Beispiel
Im Folgenden sind vier Beispiele für die mögliche Konfiguration angeführt:
Beispiel A: PROT=HTTP, PORT=8080, TIMEOUT=15
Öffnet den Port 8080 für HTTP-Requests und schließt die Netzwerkverbindung nach 15 Sekunden ohne Aktivität
Beispiel B: PROT=HTTP, PORT=80, TIMEOUT=45, EXTBIND=1, HOST=prd.sap.de
Öffnet den Port 80 für HTTP-Requests und schließt die Netzwerkverbindung nach 45 Sekunden ohne Aktivität. Da der Port 80 unter UNIX nur vom Benutzer root gebunden werden kann, wird das externe Bindeprogramm aktiviert. Der Port wird nur an den Rechnernamen prd.sap.de gebunden
Beispiel C: PROT=HTTPS, PORT=443, TIMEOUT=15, PROCTIMEOUT=45, VCLIENT=0
Öffnet den Port 443 für HTTPS-Requests und schließt die Netzwerkverbindung nach 15 Sekunden ohne Aktivität. Der Timeout für die Bearbeitung im Backend beträgt 45 Sekunden, und der Server fordert den Client nicht zur Übermittlung eines Zertifikates auf.
Beispiel D: PROT=HTTPS, PORT=8444, SSLCONFIG=ssl_config_0
Öffnet den Port 8444 für HTTPS-Requests und setzt die SSL-Konfiguration wie im Parameter ssl_config_0 gesetzt.
Achtung
Der Parameter selbst ist nicht dynamisch und erfordert nach der Konfiguration einen Neustart des Systems.
Es ist aber möglich die Server Ports über die Webadministrationsfläche zu konfigurieren. Bitte beachten sie, dass dort gemachte Modifikationen beim Durchstart des SAP Web Dispatchers verloren gehen.
Voraussetzung:
Beim icm/server_port_<xx> handelt es sich um einen generischen Profilparameter.
Die generischen Profilparameter dienen dazu, mehrere Dinge zu spezifizieren, etwa Ports, auf denen eine Softwarekomponente Requests entgegennehmen soll.
Der Index <xx> steht für eine Zahl ohne führende 0. Eine aufsteigende Verwendung der Indexe ist nicht erforderlich, d.h. es ist erlaubt, beispielsweise nur icm/server_port_2 zu konfigurieren.
Syntax
PROT=<Protokollname>, PORT=<Port oder Servicename>[, TIMEOUT=<timeout>, PROCTIMEOUT=<proctimeout>, EXTBIND=1, HOST=<Rechnername>, SSLCONFIG=ssl_config_<xx>, VCLIENT=<SSL Client Verifikation>, ACLFILE=<ACL-Datei>]
PORT: Spezifizieren des Port
Mit der Option PORT spezifizieren Sie den Port durch die Portnummer oder den Servicenamen. Auf einen Port kann genau nur ein Service gebunden werden.
Achtung
Mögliche Fehlerquellen:
Ein anderes Programm verwendet den Port bzw. Service bereits. In diesem Falle kann der Service nicht gestartet werden. Bitte beachten Sie, dass mehrere Services nicht auf einen Port gebunden werden können.
TIMEOUT und PROCTIMEOUT-Optionen
Sie können zwei verschiedenen Arten von Timeouts konfigurieren:
TIMEOUT = Keepalive-Timeout für die Netzwerkverbindung
Der Keepalive-Timeout gibt an, wie lange nach der erfolgreichen Bearbeitung eines Requests die Netzwerkverbindung erhalten bleiben soll, damit bei eventuell eintreffenden weiteren Requests
der TCP/IP Verbindungsaufbau nicht mehr nötig ist. Bitte beachten Sie, dass wenn Sie den Timeout im Parameter icm/server_port_<xx> konfigurieren, Sie die gemachten Angaben im Parameter icm/keep_alive_timeout übersteuern.
PROCTIMEOUT= Bearbeitungs-Timeout für die Kommunikation mit dem Backend (Workprozess)
Der Verarbeitungs-Timeout gibt den Timeout zwischen dem Abschicken eines HTTP-Requests und dem Erhalt einer HTTP-Response an.
EXTBIND: Verwenden eines externen Bindeprogramm
Für das Binden von Ports unter 1024 auf UNIX verwenden Sie die Option EXTBIND=1. Das externe Bindeprogramm läuft unter dem Benutzer root und hat die Berechtigung diese Ports zu binden.
HOST: Port nicht an alle Rechnernamen binden
Mit dem optionalen Parameter HOST=<Rechnername oder IP-Adresse> können Sie spezifizieren, dass der Port nicht an alle Rechnernamen gebunden werden soll (Standard), sondern nur an den angegebenen. So kann der Host mit nur einem offenen Port unter verschiedenen
URLs erreichbar sein.
SSLCONFIG: SSL-Konfiguration
Falls Sie die SSL-Konfiguration mit dem Parameter icm/ssl_config_<xx> gepflegt haben, müssen Sie die Option SSLCONFIG auf den Wert ssl_config_<xx> setzen.
Bitte beachten Sie, dass Sie das <xx> entsprechend dem Parameter icm/ssl_config_<xx> setzen — siehe Beispiel D.
VCLIENT: Vorweisen eines X.509 Zertifikates
Mit dem optionalen Parameter VCLIENT kann bei der Verwendung von SSL spezifiziert werden ob der Client ein X.509 Zertifikat vorweisen muss oder nicht. Es gibt insgesamt drei Stufen der Verifikation:
0: Es ist kein Zertifikat notwendig und der Server fordert auch keines an.
1: Der Server fordert den Client zur Übermittlung eines Zertifikates auf. Schickt der Client kein Zertifikat, wird die Authentifizierung auf eine andere Art (z.B. HTTP BASIC Authentifizierung vgl. RFC 2617) durchgeführt (vgl. Standartwerte).
2: Ein Client muss ein gültiges Zertifikat an den Server übermitteln, andernfalls wird der Zugriff verweigert. Bitte beachten Sie, dass dieser serverspezifische Wert den mit dem Parameter icm/HTTPS/verify_client eingestellten
Wert übersteuert.
ACLFILE: Verwenden von Zugriffskontrolllisten
Die Option ACLFILE gibt die Datei an, die als Zugriffskontrollliste verwendet wird (ACL = Access Control List). Wenn der Profilparameter gesetzt ist, muss die Datei existieren und syntaktisch korrekt sein.
Binden von Ports < 1024 auf UNIX
Zugriffskontrolllisten (ACLs) einrichten
Binden von Ports < 1024 auf UNIX