我按照Ubuntu指南安装了Tomcat 7 。服务器正在工作,并给我“它可以工作!” 上的页面http://localhost:8080/
。
现在,我想使用Netbeans设置自己的Web应用程序。我使用Java EE 6和Tomcat 7 生成了一个新的Web项目。用户在/var/lib/tomcat7/conf/tomcat-users.xml
文件上的配置正确。
当我运行项目时,一切似乎都很好,但是当我打开浏览器时,它显示500错误。
文件权限:
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
然后重新启动计算机,但是问题仍然存在。
tomcat是否以tomcat7用户身份运行?
—
muru
自从我使用tomcat以来已经很久了,但是我有两件事发生:您是否需要加入tomcat7组才能允许程序访问日志?而且,似乎它真的想访问in中的临时文件
—
马蒂·弗里德
/var/lib/tomcat7/temp
。存在吗?可能是相同的权限问题。也许您只需要将自己添加到tomcat7组即可。
看来运行tomcat7的用户(人类或应用程序)没有访问/ var / lib / tomcat7 /的权限,尤其是没有访问logs文件夹的权限。
—
MickyInTheSky14年