Ich habe Tomcat 7 gemäß der Ubuntu-Anleitung installiert . Der Server funktioniert und gibt mir das "Es funktioniert!" Seite auf http://localhost:8080/
.
Jetzt möchte ich meine eigene Webanwendung mit Netbeans einrichten. Ich habe ein neues Webprojekt mit Java EE 6 und Tomcat 7 erstellt. Der Benutzer befindet sich in der /var/lib/tomcat7/conf/tomcat-users.xml
Datei, die ordnungsgemäß konfiguriert wurde.
Wenn ich das Projekt starte, scheint alles in Ordnung zu sein, aber wenn ich den Browser öffne, wird ein 500-Fehler angezeigt .
- In der Tomcat-Ausgabe werden Berechtigungsfehler erwähnt, die versuchen, auf
tomcat7/logs
und zuzugreifen - Die IDE-Protokolle , auf die zugegriffen werden soll
tomcat7/conf
.
Dateiberechtigungen:
lucio@lucio-pc:/$ ll /var/lib/tomcat7/logs
lrwxrwxrwx 1 root root 17 jul 24 18:07 /var/lib/tomcat7/logs -> ../../log/tomcat7/
lucio@lucio-pc:/$ ll /var/log/tomcat7/
total 136
drwxr-x--- 2 tomcat7 adm 4096 ago 28 10:50 ./
drwxrwxr-x 15 root syslog 4096 ago 28 09:29 ../
-rw-r--r-- 1 tomcat7 tomcat7 800 ago 26 17:23 catalina.2014-08-26.log.gz
-rw-r--r-- 1 tomcat7 tomcat7 5173 ago 27 21:59 catalina.2014-08-27.log
-rw-r--r-- 1 tomcat7 tomcat7 31285 ago 28 10:36 catalina.2014-08-28.log
-rw-r--r-- 1 tomcat7 root 44192 ago 28 10:36 catalina.out
-rw-r--r-- 1 tomcat7 tomcat7 45 ago 26 16:19 localhost.2014-08-26.log.gz
-rw-r--r-- 1 tomcat7 tomcat7 0 ago 27 11:15 localhost.2014-08-27.log
-rw-r--r-- 1 tomcat7 tomcat7 433 ago 28 09:49 localhost.2014-08-28.log
-rw-r--r-- 1 tomcat7 tomcat7 7435 ago 26 17:23 localhost_access_log.2014-08-26.txt
-rw-r--r-- 1 tomcat7 tomcat7 0 ago 27 11:15 localhost_access_log.2014-08-27.txt
-rw-r--r-- 1 tomcat7 tomcat7 15186 ago 28 09:58 localhost_access_log.2014-08-28.txt
Ich verstehe nicht, warum nicht auf die Dateien zugegriffen werden kann. Sie können sehen, dass der Benutzer und die Gruppe tomcat7
Berechtigungen für die Dateien haben. Gibt es einen Benutzer für die JVM, der Berechtigungen für die Dateien benötigt?
Ich habe auch versucht, die Eigentümer der Dateien zu ändern, wie hier erwähnt , aber es ändert sich überhaupt nicht.
Die /etc/default/tomcat7
Datei hat:
TOMCAT7_USER=tomcat7
TOMCAT7_GROUP=tomcat7
Ich denke, es läuft als tomcat7
Benutzer.
Ich habe meinen Benutzer zur tomcat7
Gruppe hinzugefügt :
sudo usermod -aG tomcat7 $USER
Und dann den Computer neu gestartet, aber das Problem bleibt bestehen.
quelle
/var/lib/tomcat7/temp
; gibt es das Möglicherweise handelt es sich um dasselbe Berechtigungsproblem. Vielleicht müssen Sie sich nur der Tomcat7-Gruppe hinzufügen.Antworten:
Ich habe hier zwei Probleme bemerkt.
Zwei Zeilen im Fehlerprotokoll fielen mir auf:
und:
Als ich mit Lucio ein bisschen diagnostizierte , stellte ich fest, dass die
tomcat-users.xml
Datei nicht Tomcat gehörte, sondern stattdessenroot
. Ändern Sie die Berechtigungen in die richtigen, indem Sie den folgenden Befehl ausführen:Erstellen Sie den Ordner außerdem
/var/lib/tomcat7/temp
mit Tomcat-Berechtigungen wie folgt:Schließlich sollten die Protokolle repariert werden, indem sie
/var/lib/tomcat7/logs
demtomcat7
Benutzer / der Gruppe gehören. Das/var/log/tomcat7/
sollte auch demtomcat7
Benutzer UND der Gruppe gehören.quelle
tomcat-user.xml
war es ausreichend , die Berechtigungen für die Datei zu ändern . Dasselbe für die Protokolle zu tun, hat nicht funktioniert, aber die Anwendung läuft trotzdem :-)