Tomcat installation per apt-get (Linux): Unterschied zwischen den Versionen

Aus Tutorials
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „== Voraussetzungen == Java siehe Java (Ubuntu) == Installation == <pre> sudo apt-get install tomcat8 tomcat8-admin </pre> == Konfiguration == === JAVA…“)
 
 
(16 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 23: Zeile 23:
<pre>
<pre>
JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64/
JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64/
</pre>
=== Tomcat Users hinzufügen ===
Folgende Datei editieren,
<pre>
sudo vi /var/lib/tomcat8/conf/tomcat-users.xml
</pre>
die Kommentrazeichen entfernen und Rollen ähnlich folgenden Zeilen anpassen:
<pre>
  <role rolename="tomcat"/>
  <role rolename="admin-gui"/>
  <role rolename="manager-gui"/>
  <user username="admin" password="admin" roles="admin-gui,manager-gui"/>
  <user username="tomcat" password="tomcat" roles="tomcat"/>
</pre>
=== ''scanManifest'' deaktivieren ===
In der Datei
<pre>
sudo vi /var/lib/tomcat8/conf/context.xml
</pre>
folgenden Eintrag
<pre>
<?xml version="1.0" encoding="UTF-8"?>
<Context>
    ...
    <JarScanner scanManifest="false"/>
    ...
</Context>
</pre>
hinzufügen, um das Scannen von Manifest-Dateien zu deaktivieren.
== Pfade ==
{| class="wikitable"
!Name
!Wert
!Beschreibung
|-
|Start-Script
|/etc/init.d/tomcat8
|
|-
|CATALINA_HOME
|/usr/share/tomcat8
|Binärdateien
|-
|CATALINA_BASE
|/var/lib/tomcat8
|Instanzdateien
|}
== Probleme ==
=== No 'Access-Control-Allow-Origin' header is present on the requested resource. ===
In der Datei ''web.xml''
<pre>
vi sudo vi /var/lib/tomcat8/conf/web.xml
</pre>
folgende Filter hinzufügen:
<pre>
<filter>
  <filter-name>CorsFilter</filter-name>
  <filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
</filter>
<filter-mapping>
  <filter-name>CorsFilter</filter-name>
  <url-pattern>/*</url-pattern>
</filter-mapping>
</pre>
==== Links ====
[https://tomcat.apache.org/tomcat-8.0-doc/config/filter.html#CORS_Filter https://tomcat.apache.org/tomcat-8.0-doc/config/filter.html#CORS_Filter]
=== Access Denied (401) ohne Passwortabfrage ===
Die Date <code>context.xml</code> editieren
<pre>
sudo vi /var/lib/tomcat8/webapps/manager/META-INF/context.xml
</pre>
und <code>Valve</code> auskommentieren:
<pre>
<Context antiResourceLocking="false" privileged="true" >
<!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
        allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>
</pre>
Das selbe auch im Pfad <code>../host-manager/..</code> auskommentieren
<pre>
sudo vi /var/lib/tomcat8/webapps/host-manager/META-INF/context.xml
</pre>
</pre>




Zurück zu [[Ubuntu#T (Server)|Ubuntu]]
Zurück zu [[Ubuntu#T (Server)|Ubuntu]]

Aktuelle Version vom 30. Januar 2021, 13:13 Uhr

Voraussetzungen

Java siehe Java (Ubuntu)

Installation

sudo apt-get install tomcat8 tomcat8-admin

Konfiguration

JAVA_HOME setzen

Konfigurationsdatei öffnen

sudo vi /etc/default/tomcat8

und folgende Zeile anpassen:

JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64/

Tomcat Users hinzufügen

Folgende Datei editieren,

sudo vi /var/lib/tomcat8/conf/tomcat-users.xml

die Kommentrazeichen entfernen und Rollen ähnlich folgenden Zeilen anpassen:

  <role rolename="tomcat"/>
  <role rolename="admin-gui"/>
  <role rolename="manager-gui"/>
  <user username="admin" password="admin" roles="admin-gui,manager-gui"/>
  <user username="tomcat" password="tomcat" roles="tomcat"/>

scanManifest deaktivieren

In der Datei

sudo vi /var/lib/tomcat8/conf/context.xml

folgenden Eintrag

<?xml version="1.0" encoding="UTF-8"?>
<Context>
    ...

    <JarScanner scanManifest="false"/>

    ...
</Context>

hinzufügen, um das Scannen von Manifest-Dateien zu deaktivieren.

Pfade

Name Wert Beschreibung
Start-Script /etc/init.d/tomcat8
CATALINA_HOME /usr/share/tomcat8 Binärdateien
CATALINA_BASE /var/lib/tomcat8 Instanzdateien

Probleme

No 'Access-Control-Allow-Origin' header is present on the requested resource.

In der Datei web.xml

vi sudo vi /var/lib/tomcat8/conf/web.xml

folgende Filter hinzufügen:

<filter>
  <filter-name>CorsFilter</filter-name>
  <filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
</filter>
<filter-mapping>
  <filter-name>CorsFilter</filter-name>
  <url-pattern>/*</url-pattern>
</filter-mapping>

Links

https://tomcat.apache.org/tomcat-8.0-doc/config/filter.html#CORS_Filter

Access Denied (401) ohne Passwortabfrage

Die Date context.xml editieren

sudo vi /var/lib/tomcat8/webapps/manager/META-INF/context.xml

und Valve auskommentieren:

<Context antiResourceLocking="false" privileged="true" >
<!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>

Das selbe auch im Pfad ../host-manager/.. auskommentieren

sudo vi /var/lib/tomcat8/webapps/host-manager/META-INF/context.xml


Zurück zu Ubuntu