Datenschutzhinweis

 

Beim Laden dieses Inhalts werden Nutzungsinformationen an Vimeo übertragen und dort ggf. verarbeitet.

 

             

Tomcat-Einstellungen

Geändert am Mi, 25 Sep um 4:55 NACHMITTAGS

INHALTSVERZEICHNIS


Diese Einstellungen sollten an jedem System entsprechend vorgenommen werden. Optional können noch folgende Einstellungen vorgenommen werden:

  • Bereitstellung über HTTPS
    Konfiguration des Tomcats um Aufruf über HTTPS zu ermöglichen
  • FORMCYCLE von Root-Domain aufrufen
    Statt etwa über http://formcycle.eu/formcycle/ kann formcycle so über http://formcycle.eu/ aufgerufen werden.
  • Datenverzeichnis von formcycle ändern
    Verzeichnis, in dem interne Daten von formcycle  und Formularen gespeichert werden.

Speicher

Folgende Einstellungen bzgl. Arbeitsspeicher sollten vorgenommen bzw. angepasst werden. Die Summe von On-Heap und Off-Heap sollte geringer sein als der maximal zur Verfügung stehende Arbeitsspeicher.

  • -Xms512m
    Anfangsgröße des On-Heap.
  • -Xmx3072m
    Maximalgröße des On-Heap.
  • --XX:MaxDirectMemorySize=3072m
    Maximalgröße des Off-Heaps. Der Off-Heap wird standardmäßig für den Formular- und Dateien-Cache verwendet, falls dies nicht anders konfiguriert ist.

Beispiel (Linux)

Der Pfad zur Konfigurationsdatei ist TOMCAT_VERZEICHNIS/bin/setenv.sh

export JAVA_OPTS="$JAVA_OPTS -Xms512m -Xmx4096m"

Einstellung am Connector

Folgende Einstellungen sollten am Tomcat in der Konfigurationsdatei TOMCAT_VERZEICHNIS/conf/server.xml vorgenommen werden:

<Connector port="80" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443"
           URIEncoding="UTF-8"
           maxPostSize="10485760"
           maxHttpHeaderSize="65536"
           relaxedQueryChars="[ \ ] ^ ` { | }" ></Connector>


Wichtig: FORMCYCLE unterstützt in Version 7 in Kombination mit dem Tomcat 9 momentan kein HTTP/2. Daher darf in dem von FORMCYCLE verwendeten Connector keine Protokollupgrade-Definition wie  vorhanden sein.

Weitere Informationen zu den Parametern finden Sie in den folgenden Abschnitten.

Beschränkung der Upload-Größe ändern

Diese Einstellung betrifft die Maximalgröße von Dateien beim Upload im Formular durch Uploadelemente und beim Upload im Posteingang. Ist die Uploadgröße kleiner als definiert, kommt es zu einem Fehler beim Hochladen der Datei. Der Default-Wert sind 2MB.

Der Pfad zur Konfigurationsdatei ist TOMCAT_VERZEICHNIS/conf/server.xml

Folgende Option muss innerhalb des Connectors definiert sein:

maxPostSize="Wert in Bytes"

Beispiel für eine maximale Uploadgröße von 10 MB, die Angabe erfolgt in Bytes:

<Connector ...
maxPostSize="10485760"
... />

Beschränkung der HTTP-Headergröße ändern

Diese Einstellung betrifft die Maximalgröße der vom Tomcat akzeptierten HTTP-Header. Diese kann zum Beispiel bei aktivierter Kerberos-Authentifizierung den Standardwert überschreiten, sodass Tomcat zum Beispiel der Aufruf eines Formulars mit einem HTTP-Fehlercode 400 (Ungültiger Request) verweigert.

Der Pfad zur Konfigurationsdatei ist TOMCAT_VERZEICHNIS/conf/server.xml.


Folgende Option muss innerhalb des Connectors definiert sein:

maxHttpHeaderSize="Wert in Bytes"

Beispiel für 64 KB, die Angabe erfolgt in Bytes:

<Connector ...
            maxHttpHeaderSize="65536"
           ... />

UTF-8

Kommt es zu Fehlern bei der Darstellung von Umlauten oder anderen landesspezifischen Zeichen, prüfen Sie, ob das URIEncoding am Connector angegeben wurde. Der Pfad zur Konfigurationsdatei ist TOMCAT_VERZEICHNIS/conf/server.xml. Folgende Option muss innerhalb des Connectors definiert sein:

URIEncoding="UTF-8"


Beispiel

<Connector ...
            URIEncoding="UTF-8" 
           ... />


Kommt es ferner zu Darstellungsproblemen von Dateinamen mit Sonderzeichen und/oder Umlauten, ergänzen Sie bitte den folgenden Java-Parameter:

-Dfile.encoding=UTF-8


Dieser muss, je nach verwendetem Betriebssystem, entweder in der verwendeten Konfigurationsdatei oder Konfigurationsfenster angegeben werden:

Encoding als Java-Parameter festlegen

Encoding als Java-Parameter festlegen (zu öffnen über <Tomcat-Verzeichnis>/bin/tomcat9w.exe)


Alternativ kann der Parameter auch in einer setenv.bat-Datei festgelegt werden.


Hinweis: Nach dem Hinzufügen des Parameters muss der Tomcat neu gestartet werden. Erst dann werden die Java Options neu initialisiert.

Beispiel (Linux)
Der Pfad zur Konfigurationsdatei ist TOMCAT_VERZEICHNIS/bin/setenv.sh

export JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF-8"

Session-Timeout

Das Session-Timeout kann innerhalb der web.xml von FORMCYCLE erhöht werden, sollte die Standardeinstellung von 30 Minuten nicht ausreichen.

Der Pfad zur Konfigurationsdatei ist TOMCAT_VERZEICHNIS/webapps/formcycle/WEB-INF/web.xml

<!-- 30 Minuten bis Session-Timeout -->
<session-config>
...
  <session-timeout>30</session-timeout>
...
</session-config>

Session-Tracking

Innerhalb der web.xml von FORMCYCLE (TOMCAT_VERZEICHNIS/webapps/formcycle/WEB-INF/web.xml) oder auch in der globalen web.xml des Tomcat-Servers (TOMCAT_VERZEICHNIS/conf/web.xml) kann der Modus des zu verwendenden Session-Tracking Modus hinterlegt werden. Standardmäßig gibt es seitens FORMCYCLE hierfür keine Festlegung, sodass hier sowohl die Verwendung von Cookies oder das Übertragen der Session-ID innerhalb der URL möglich sind. Zweiteres ist ein Rückfall falls z.B. der Browser des Benutzers keine Cookies zulässt. Da eine solche URL jedoch bei unachtsamem Gebrauch in falsche Hände geraten kann und man so ggf. die Sitzung eines angemeldeten Benutzers übernehmen könnte, empfiehlt es sich wenn möglich ausschließlich das Session-Tracking per Cookie zu verwenden. Konfiguriert wird das Verhalten durch das Auskommentieren bzw. Einfügen der gewünschten Mechanismen. Innerhalb der FORMCYCLE-web.xml sind standardmäßig beide Werte auskommentiert was zu dem beschriebenen Standard-Verhalten führt. Ein Session-Tracking ausschließlich per Cookie würde demnach wie folgt aussehen:

<session-config>
...
  <!-- Uncomment the session-trackings-mode(s) you want to use -->
  <!-- <tracking-mode>URL</tracking-mode> -->
  <tracking-mode>COOKIE</tracking-mode>
...
</session-config>

Innerhalb der Session-Konfiguration können sowohl in der globalen Tomcat-web.xml (TOMCAT_VERZEICHNIS/conf/web.xml) als auch innerhalb der FORMCYCLE-web.xml (TOMCAT_VERZEICHNIS/webapps/formcycle/WEB-INF/web.xml) Einstellungen bezüglich des verwendeten Session-Cookies getroffen werden. FORMCYCLE setzt hier standardmäßig bereits den Wert http-only was dazu führt, dass der Cookie lediglich innerhalb des Browsers benutzt werden kann. Zusätzlich besteht die Möglichkeit das Cookie auf eine feste Domain (domain) und Pfad (path) zu binden und auch einen eigenen Namen (name) sowie die Gültigkeit (max-age) festzulegen. Standardmäßig sind Anpassungen dieser Einstellungen nicht nötig. Relevanter ist jedoch die Option secure. Ist diese vorhanden und hat den Wert true, werden Cookies lediglich bei der Kommunikation über HTTPS übertragen. Sollte die Anwendung oder der ganze Server ausschließlich über HTTPS bereitgestellt werden, ist es aus Gründen der Sicherheit empfohlen diesen Wert zu setzen. Innerhalb der FORMCYCLE-web.xml würde dies wie folgt aussehen:

<session-config>
...
  <cookie-config>
    <!-- <comment>This is my special cookie configuration</comment> -->
    <!-- <domain>example.com</domain> -->
    <!-- <name>CUSTOM_NAME</name> -->
    <http-only>true</http-only>
    <secure>true</secure>
    <!-- <max-age>30000</max-age> -->
    <!-- <path>/formcycle</path> -->
  </cookie-config>
</session-config>

Kontextname

Der Kontextname wird beispielsweise genutzt, um Monitoring Beans zum Überwachen des Serverstatus einzurichten. Standardmäßig ist der Kontextname der Name der WAR-Datei, kann aber auch geändert werden, indem der Kontextparameter XFC_CONTEXT_NAME in der Konfigurationsdatei web.xml geändert wird.

<context-param>
  <param-name>XFC_CONTEXT_NAME</param-name>
  <param-value>formcycle</param-value>
</context-param>

Benutzerpfad für Tomcat

Auf manchen Linux-basierten Systemen besitzt der Tomcat Nutzer standardmäßig keinen Benutzerordner. Ein solcher wird aber benötigt, damit FORMCYCLE grundlegende Einstellungen ablegen kann. Der Pfad des Benutzerordners wird üblicherweise in der Datei /etc/passwd vorgenommen.

War dieser Artikel hilfreich?

Das ist großartig!

Vielen Dank für das Feedback

Leider konnten wir nicht helfen

Vielen Dank für das Feedback

Wie können wir diesen Artikel verbessern?

Wählen Sie wenigstens einen der Gründe aus
CAPTCHA-Verifikation ist erforderlich.

Feedback gesendet

Wir wissen Ihre Bemühungen zu schätzen und werden versuchen, den Artikel zu korrigieren