Einführung
Einführung

Einführung / Konfiguration des FirstSpirit-Servers / Konfigurationsdateien (FirstSpirit-Server) / FirstSpirit-Server (fs-server.conf) / Communication

###########################
# communication
###########################
HTTP_PORT=8000
SOCKET_PORT=1088
INTERNAL_SERVLET_ENGINE=0

HOST (optional)

Falls ein externer Applikations-Server an Stelle des in FirstSpirit integrierten Web-Servers eingesetzt wird, wird hier der Hostname oder IP-Adresse des FirstSpirit-Servers eingetragen. Servlets auf dem externen Applikations-Server verbinden zum SOCKET_PORT des FirstSpirit-Servers auf dieser Adresse. Dieser Parameter wird automatisch in die Datei web.xml der FirstSpirit-Servlets beim Start eingetragen.

HTTP_PORT

Http-Port des FirstSpirit-Servers (wird für die Standardkommunikation zwischen FirstSpirit-Client und -Server benötigt)

URL (optional)

Die hier angegebene URL zur Startseite des FirstSpirit-Servers wird an unterschiedlichen Stellen verwendet, z. B.:                                            

  • in automatisch gesendeten E-Mails, die eine URL zum Start des Clients enthalten. Solche E-Mails werden zum Beispiel bei Zustandsänderungen innerhalb definierter Arbeitsabläufe (siehe Arbeitsabläufe (→Online Dokumentation FirstSpirit)) gesendet.   
  • bei Verwendung der Funktion „FirstSpirit Adresse kopieren“ im SiteArchitect (Menü „Extras“, siehe Extras (→Handbuch FirstSpirit SiteArchitect))
  • zum Ermitteln einer Referenz innerhalb einer FS_BUTTON-Komponente
  • beim Wechsel von einer Webapplikation in eine andere (z. B. von fs5root in fs5webmon) 

Normalerweise wird die URL automatisch ermittelt, was aber nicht funktioniert, falls der Server unter mehreren Hostnamen bekannt ist.

URL=http://fs5server.domain.net

Der Parameter URL muss immer gesetzt werden, wenn einer der oben genannten Anwendungsfälle vorliegt (z. B. Arbeitsablauf-E-Mails) und ein externer Web-Applikations-Server (z. B. Tomcat) verwendet werden sollen.

Folgende Parameter müssen in diesem Fall ebenfalls gesetzt werden. Die Werte werden an die automatisch ermittelte bzw. durch den Parameter URL definierte URL angehängt und für den Verbindungsaufbau berücksichtigt.               

  • fs.url.hostname (optional): Über diesen Parameter kann ein Hostname für die Client-Verbindung angegeben werden.
  • fs.url.socketport (optional): Über diesen Parameter kann der Port angegeben werden, wenn die Client-Verbindung im Socket-Modus hergestellt werden soll (Platzhalter %FIRSTspiritSOCKETURL% in Arbeitsablauf-E-Mails).
  • fs.url.httpport (optional): Über diesen Parameter kann der Port angegeben werden, wenn die Client-Verbindung im HTTP-Modus hergestellt werden soll (Platzhalter %FIRSTspiritURL% in Arbeitsablauf-E-Mails).
  • fs.url.usehttps (optional): Soll beim Aufruf der Url HTTPS berücksichtigt werden, muss dieser Parameter auf true gesetzt werden. Der Standardwert ist false.

Beispiel:
Aus folgender Konfiguration in der fs-server.conf

HTTP_PORT=5100
SOCKET_PORT=5110
URL=http://myServer:8000
fs.url.hostname=aliashost
fs.url.socketport=8300  
fs.url.httpport=8200
fs.url.usehttps=true

würde für den Platzhalter %FIRSTspiritURL%:                                         

http://myServer:8000/start/FIRSTspirit.jnlp?app=client&project=myProject&name
=null&type=Page&id=443977&host=aliashost&port=8200&mode=HTTP&usehttps=true

für den Platzhalter %FIRSTspiritSOCKETURL%:

http://myServer:8000/start/FIRSTspirit.jnlp?app=client&project=myProject&name
=null&type=Page&id=443977&host=aliashost&port=8300&mode=SOCKET&usehttps=true

Bei Verwendung in einem bereits gestarteten Projekt z. B. über die Funktion „Zu FirstSpirit Adresse wechseln“ im SiteArchitect haben diese Parameter in der Regel keine Auswirkung.

Wichtig Sind die Verbindungseinstellungen auf der Startseite aktiviert (siehe Benutzer), werden gemäß der auf Seite Startseite beschriebenen Auswertungsreihenfolge die fs.url-Parameter nicht berücksichtigt. Entgegen dieser Auswertungsreihenfolge werden allerdings die entsprechenden Parameter, die in den Servereigenschaften in den Bereichen Webstart und Startseite definiert sind, bei deaktivierten Verbindungseinstellungen nicht berücksichtigt, sondern es kommen die fs.url-Parameter zum Tragen. 

SOCKET_PORT

TCP-Port, auf dem der FirstSpirit-Server auf Verbindungen für das FirstSpirit-eigene Socket-Protokoll wartet. Wird für die interne Kommunikation zwischen Servlets und FirstSpirit-Server verwendet und, falls konfiguriert, für die Kommunikation mit dem FirstSpirit SiteArchitect. Dieser Parameter wird außerdem automatisch in die Datei web.xml der FirstSpirit-Servlets beim Start eingetragen.

Wichtig Wird der Wert dieses Parameters geändert, so müssen auf dem Web-Server installierte Web-Anwendungen manuell gelöscht werden, damit diese beim FirstSpirit-Neustart mit dem geänderten Port neu ausgerollt werden.

INTERNAL_SERVLET_ENGINE

Für Testzwecke und als Fallback liefert FirstSpirit den Webserver „FirstSpirit Jetty Server“ mit, der integrierte Webserver-Funktionalität sowie eine JSP/Servlet-Engine auf Basis des Open-Source-Produkts „Eclipse Jetty“ zur Verfügung stellt. Für den Produktivbetrieb wird hingegen der Einsatz einen externen Webservers empfohlen, beispielsweise Apache Tomcat.
Darüber hinaus gibt es eine frühere Jetty-Implementierung „InternalJetty“, die aber nicht mehr unterstützt wird und nicht mehr verwendet werden soll. Diese wird in Zukunft entfallen.

Bei Verwendung des Webservers „FirstSpirit Jetty Server“ oder eines externen Webservers sollte der Wert auf 0 stehen. Dadurch wird der nicht mehr unterstützte „InternalJetty“ deaktiviert (Standard).

Steht der Wert auf 1, wird der nicht mehr unterstützte „InternalJetty“ gestartet.

Zu weiteren Informationen zu Verwendung und Konfiguration von Webservern unter FirstSpirit siehe auch

SOCKET_HOST (optional)

Hostname für die Bindeadresse des SOCKET_PORT, um den Server, wenn notwendig, auf eine IP-Adresse zu beschränken. Wird kein Wert übergeben, bindet der Server an alle IP-Adresse des Hosts. Zu Hinweisen hinsichtlich der Verwendung von IPv6 siehe auch Seite IPv6-Unterstützung.

Wichtig Der Parameter SOCKET_HOST (= das Interface, auf den sich der Socket-Listener binden soll) kann nur verwendet werden, wenn auch der Parameter HOST (= Hostname, über den der Server von außen erreichbar ist, siehe oben) korrekt konfiguriert wurde, d.h. auf dasselbe Netzwerk-Interface des Servers abgebildet wird.

SYMBOLIC_HOSTNAME (optional)

Symbolischer Hostname des FirstSpirit-Servers. Dieser Hostname dient nur zur Anzeige auf der Startseite und hat ansonsten keine weitere Funktion.

ALLOWED_ENCRYPTIONS (optional)

Über diesen Parameter kann dem Benutzer vorgegeben werden, welche Verschlüsselung er in seinen Verbindungseinstellungen verwenden muss. Für die Verwendung von TLS wird der Wert 1 gesetzt, für die Verwendung von DH_ARC4 der Wert 2. Soll keine Verschlüsselung verwendet werden, muss der Wert 0 gesetzt werden. Auch beliebige Kombinationen der Parameter 0, 1 und 2 sind möglich. Beispiel: ALLOWED_ENCRYPTIONS=1,2
Stimmt die Verschlüsselung, die der Benutzer eingestellt hat, nicht mit der hier vorgegebenen Verschlüsselung überein, erhält der Benutzer bei der Anmeldung am SiteArchitect oder zur Anwendung des ServerManager eine Fehlermeldung, dass die Verbindungsparameter falsch gesetzt wurden; es ist keine Kommunikation zwischen Client und Server möglich.         
Weitere Möglichkeiten zur Parametrisierung der TLS-Verschlüsselung siehe Parametrisierung der Verschlüsselung.

Wichtig Für den Parameter ALLOWED_ENCRYPTIONS kann keine TLS-Verschlüsselung (Parameterwert 1) verwendet werden, wenn Websphere als Application-Server für die Webanwendung fs5root eingesetzt wird. In diesem Fall bietet sich an, RC4-Verschlüsselung (Parameterwert 2) für SOCKET oder HTTP einzusetzen oder HTTPS zu verwenden. Bei HTTPS ist keine zusätzliche Verschlüsselung notwendig, so dass dann der Parameterwert 0 einzusetzen ist.

servletSessionCookieName (optional)

FirstSpirit verwendet mehrere Standard-Webanwendungen (fs5root, fs5webedit, fs5webmon, fs5preview, fs5staging) sowie eventuell weitere, projektlokale Webanwendungen (fs5webedit_PROJECTID und fs5preview_PROJECTID).
Über den Parameter servletSessionCookieName kann ein FirstSpirit-spezifischer Name für das Session Cookie für alle Webanwendungen definiert werden (Standardwert: nicht definiert, es wird der vom WebApp-Server vorgegebene Cookie-Name verwendet, meistens JSESSIONID).    

Syntax: FS${FS_MAJOR}${FS_MINOR}SESSIONID                               
Beispiel:

servletSessionCookieName=fs52devsession       

Es ist aber auch möglich, für jede Webanwendung einen eigenen, spezifischen Cookie-Namen zu definieren:      
Beispiel:

servletSessionCookieName.fs5webmon=fs52webmonid
servletSessionCookieName.webapp1=fs52webappxid

Eine Änderung des Vorgabewerts ist nur notwendig, wenn zwei oder mehr FirstSpirit-Server auf demselben Host mit derselben URL betrieben werden. In diesem Fall sollte jedem FirstSpirit-Server ein eindeutiger Cookie-Name zugewiesen werden.

Verfügbar ab FirstSpirit-Version 5.2R5 Die Vorbelegung der optionalen Parameter servletSessionCookieName und servletSessionCookieName.ROOT in der fs-server.conf wurde geändert:

servletSessionCookieName=FS${FS_MAJOR}${FS_MINOR}SESSIONID 
servletSessionCookieName.ROOT=FS${FS_MAJOR}${FS_MINOR}ROOTID

Für alle FirstSpirit-Neuinstallationen wird dann ein FirstSpirit-spezifischer Name für das Session Cookie für alle Webanwendungen und für die Rootanwendung vorbelegt. Das geänderte Verhalten wirkt sich ausschließlich auf Neuinstallationen aus. Für bestehende FirstSpirit-Installationen bleibt die bisherige Konfiguration erhalten.

clientCookieNames (optional)

Dieser Parameter ist nur notwendig, wenn FirstSpirit in Verbindung mit einem Applikationsserver bzw. einer Firewall (auf dem Applikationsserver) betrieben wird, die einen zusätzlichen  Session-Cookie (z. B. zur Authentifizierung) setzt. Die Namen dieser zusätzlichen Session-Cookies müssen FirstSpirit über den Parameter clientCookieNames bekanntgemacht werden. Beim Start des SiteArchitect oder ServerManager übergibt FirstSpirit die hier definierten Cookies über die auf Client-Seite heruntergeladene Startdatei für Java Web Start (FirstSpirit.jnlp) bzw. den FirstSpirit Launcher (FirstSpirit.fslnch).                                          
Die Cookies werden auch an die für das Projekt konfigurierte Browser-Engine weitergereicht und sind damit in der integrierten Vorschau des SiteArchitect verfügbar. Das gleiche Cookie wird dann in drei unterschiedlichen Sitzungskontexten (Webbrowser: HTTP-Client, SiteArchitect: Client/Server-Kommunikation, SiteArchitect: Integrierte Browser-Engine) verwendet.

Standardwert für ClientCookieNames: [leer]

Die kommaseparierte Liste der einzutragenden Cookie-Namen muss neben den Session-Cookie-Namen der WebApp-Firewall auch den Namen des Session-Cookies der FirstSpirit-WebApps enthalten. Um den Namen des Session-Cookies der FirstSpirit-WebApps eindeutig zu definieren, sollte bei Verwendung von clientCookieNames auch der Parameter servletSessionCookieName definiert sein, der den Namen des Session-Cookies definiert. Zur Übernahme in die Liste von clientCookieNames wird dann die Variable ${servletSessionCookieName} verwendet, siehe Beispiel:

servletSessionCookieName=fssessionid
clientCookieNames=${servletSessionCookieName},PD-ID,PD-H-SESSION-ID,PD-S-

Einige Funktionen des FirstSpirit SiteArchitect werden durch den Betrieb in Verbindung mit einer WebApp-Firewall eingeschränkt. Folgende vom Benutzer im SiteArchitect aufrufbare Funktionen erfordern anschließend einen manuellen Neustart des SiteArchitect: Projektwechsel, Wechsel des integrierten Browsers.

Verfügbar ab FirstSpirit-Version 5.2R5 Die optionale Konfiguration spezifischer Werte für Session-Cookies ist möglich. Über diese Attribute können Werte für Domain, Pfad und Secure-Flag der Session-Cookies gesetzt werden, wenn diese Werte über die fremderzeugten Cookies selbst nicht ausgelesen werden können:

  • clientCookie.{cookieName}.domain: Angabe einer Domain für den Session-Cookie. Wird kein Wert gesetzt, übernimmt der Cookie die URL, mit der der Client gestartet wurde (inkl. Hostname).
  • clientCookie.{cookieName}.path: Angabe einer Pfades für den Session-Cookie. Standardwert /
  • clientCookie.{cookieName}.secure: Das Secure-Flag schränkt die Übertragung der Session-Cookies ein. Ist der Wert true gesetzt, wird der Cookie nur zum Server geschickt, wenn der Benutzer eine HTTPS-Seite betritt (vorausgesetzt, die Domain-/Path-Einschränkung passt). Ist der Wert false gesetzt, wird der Cookie sowohl auf HTTP- als auch auf HTTPS-Seiten gesendet.

Beispiel (fs-server.conf):

clientCookieNames=cookieName1     
clientCookie.cookieName1.domain=*.domain.com     
clientCookie.cookieName1.path=/     
clientCookie.cookieName1.secure=true
Wichtig Die WebApp-Firewall muss ihre eigenen Session-Cookies an die FirstSpirit-WebApps weitergeben. Bei IBM WebSeal ist dazu beispielsweise in der Konfiguration zur „Junction“ im Bereich Identity der Parameter „Include Session Cookie“ zu aktivieren. Außerdem muss das Session-Timeout der WebApp-Firewall genügend groß eingestellt werden, so dass die Zeitspanne zum Start des SiteArchitect ausreicht. Üblicherweise genügen hier 5 Minuten.

Hinweis zur internen Kommunikation (IP-Multicast)

Um festzustellen, welche Server innerhalb eines Netzwerks erreichbar sind, sendet und empfängt der FirstSpirit-Server IP-Multicast-Nachrichten. Die Multicast Nachrichten werden für IPv4 unter der Adresse 239.192.34.16 gesendet und empfangen und für IPv6 unter der Adresse ff15::efc0:2210 (jeweils mit dem TCP-Port 23416).

© 2005 - 2020 e-Spirit AG | Alle Rechte vorbehalten. | FirstSpirit 2020-01 | Datenschutz | Impressum | Kontakt