Problemi di autorizzazione con tomcat

9

Ho installato Tomcat 7 seguendo la guida di Ubuntu . Il server funziona e mi dà "Funziona!" pagina su http://localhost:8080/ .

Ora voglio configurare la mia webapp usando Netbeans. Ho generato un nuovo progetto Web con Java EE 6 e Tomcat 7. L'utente si trova sul file /var/lib/tomcat7/conf/tomcat-users.xml configurato correttamente.

Quando eseguo il progetto sembra tutto ok, ma quando apro il browser visualizza un errore di 500 .

  • L' output di Tomcat riporta gli errori di autorizzazione che tentano di accedere a tomcat7/logs e
  • I log IDE che tentano di accedere a tomcat7/conf .

Autorizzazioni file:

[email protected]:/$ ll /var/lib/tomcat7/logs
lrwxrwxrwx 1 root root 17 jul 24 18:07 /var/lib/tomcat7/logs -> ../../log/tomcat7/
[email protected]:/$ 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

Non capisco perché non possa accedere ai file, puoi vedere che l'utente e il gruppo tomcat7 hanno le autorizzazioni per i file. Esiste un utente per la JVM che ha bisogno di privilegi sui file?

Ho anche provato a modificare le proprietà dei file come menzionato qui ma non cambia affatto.

Il file /etc/default/tomcat7 ha:

TOMCAT7_USER=tomcat7
TOMCAT7_GROUP=tomcat7

Quindi suppongo che sia in esecuzione come tomcat7 utente.

Ho aggiunto il mio utente al gruppo tomcat7 :

sudo usermod -aG tomcat7 $USER

E poi riavviato la macchina, ma il problema persiste.

    
posta Lucio 27.08.2014 - 00:17

1 risposta

9

Ho notato due problemi qui.

Due righe nel registro degli errori mi sono state evidenziate:

SEVERE: Cannot find specified temporary folder at /var/lib/tomcat7/temp  

e:

java.io.FileNotFoundException: /var/lib/tomcat7/conf/tomcat-users.xml (Permission denied)

Facendo un po 'di diagnosi con Lucio , ho capito che il file tomcat-users.xml non era di proprietà di Tomcat, ma invece root . Modificare le autorizzazioni con quelle appropriate eseguendo il comando:

sudo chown tomcat7:tomcat7 /var/lib/tomcat7/conf/tomcat-users.xml

Inoltre, crea la cartella /var/lib/tomcat7/temp con permessi tomcat, in questo modo:

sudo mkdir /var/lib/tomcat7/temp && sudo chown -R tomcat7:tomcat7 /var/lib/tomcat7/temp

Infine, la correzione dei log dovrebbe essere effettuata rendendo /var/lib/tomcat7/logs di proprietà di tomcat7 user / group. Anche /var/log/tomcat7/ deve essere di proprietà di tomcat7 utente E gruppo.

    
risposta data Kaz Wolfe 31.08.2014 - 00:18

Leggi altre domande sui tag