Проблемы с разрешением с Tomcat
Я установил Tomcat 7 в соответствии с руководством по Ubuntu. Сервер работает и выдает мне: "Это работает!" страница наhttp://localhost:8080/
,
Теперь я хочу настроить свое собственное веб-приложение, используя Netbeans. Я сгенерировал новый веб-проект с Java EE 6 и Tomcat 7. Пользователь находится на/var/lib/tomcat7/conf/tomcat-users.xml
файл правильно настроен.
Когда я запускаю проект, все выглядит нормально, но когда я открываю браузер, он отображает ошибку 500.
- Выходные данные Tomcat упоминают ошибки прав доступа при попытке доступа
tomcat7/logs
а также - Журналы IDE пытаются получить доступ
tomcat7/conf
,
Файлы разрешения:
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
Я не понимаю, почему не может получить доступ к файлам, вы можете видеть, что пользователь и группаtomcat7
имеет разрешения на файлы. Есть ли пользователь для JVM, которому нужны права на файлы?
Я также попытался изменить владельца файлов, как упомянуто здесь, но это не изменилось вообще.
/etc/default/tomcat7
файл имеет:
TOMCAT7_USER=tomcat7
TOMCAT7_GROUP=tomcat7
Так что я думаю, это работает как tomcat7
пользователь.
Я добавил своего пользователя в tomcat7
группа:
sudo usermod -aG tomcat7 $USER
А затем перезапустил машину, но проблема не исчезла.
1 ответ
Я заметил две проблемы здесь.
Мне выделились две строки в журнале ошибок:
SEVERE: Cannot find specified temporary folder at /var/lib/tomcat7/temp
а также:
java.io.FileNotFoundException: /var/lib/tomcat7/conf/tomcat-users.xml (Permission denied)
Сделав небольшую диагностику с Люсио, я выяснил, что tomcat-users.xml
файл не принадлежал Tomcat, но вместо этого root
, Измените разрешения на правильные, запустив команду:
sudo chown tomcat7:tomcat7 /var/lib/tomcat7/conf/tomcat-users.xml
Также создайте папку /var/lib/tomcat7/temp
с разрешениями tomcat, вот так:
sudo mkdir /var/lib/tomcat7/temp && sudo chown -R tomcat7:tomcat7 /var/lib/tomcat7/temp
Наконец, исправление журналов должно быть сделано путем /var/lib/tomcat7/logs
принадлежит tomcat7
группа пользователей. /var/log/tomcat7/
должен также принадлежать tomcat7
пользователь И группа.