2011-01-12 65 views
10

地段(拒绝)的我如何安装Apache Web服务器和Apache Tomcat,以避免出现错误是这样的:在/ usr /本地/ Apache-tomcat-

java.io.FileNotFoundException: /usr/local/apache-tomcat-7.0.5/work/Catalina/localhost/_/SESSIONS.ser (Permission denied)

7.0.5/logs/catalina.out

我想我应该为Apache用户做些事情,因为当我在chmod 777 -R ./上的tomcat文件夹中所有的错误都消失了。一个在catalina.out的

+1

将SESSSIONS.ser传递给Apache的用户/组和/或将其设置为模式666 – 2011-01-12 17:50:29

+0

此问题仅限于sessions.rer?如果我只显示这个文件,是否有可能在其他文件上得到同样的错误?我想我应该在/usr/local/apache-tomcat-7.0.5目录中执行此操作,但我不确定这仅限于/usr/local/apache-tomcat-7.0.5。通过这个chown或chmod 666,我的服务器安全性会发生什么? – 2011-01-14 08:58:05

回答

5

不能这样做的安全担保,但

$ cd /usr/local/tomcat/ #or /usr/shared/tomcat6, whatever your $TOMCAT_BASE dir 
$ chown -R tomcat6 webapps temp logs work conf 
$ chmod -R 777 webapps temp logs work conf 

works a treat针对这些情况。

我的tomcat安装过程中出现许可错误,但是抛开了大门,从而修复了一切。

18
$ chmod -R 777 webapps temp logs work conf 

是非常危险的,不要这样做,我写了“不这样做”?不要做!猜猜你的tomcat-users.xml与你的用户名和纯文本密码一起?

除了/ tmp之外,在UNIX上任何地方都可以执行读写 - 执行任何操作(甚至是在prod中,从不这样做)简直是愚蠢的。而且,它使你的第一行,chown -R tomcat6完全无用。

确保运行Tomcat作为tomcat7(它是Tomcat的6 tomcat6中),并简单地做:

$ cd $TOMCAT_BASE 
$ chown -R tomcat7:tomcat7 webapps temp logs work conf 
$ chmod -R 770 webapps temp logs work conf 

如果你希望能够读,写或执行的东西在那里,将自己添加到tomcat7组。

0

遇到类似的情况这样的与旧的Tomcat的6实现...

... 
SEVERE: Error deploying web application directory host-manager 
java.io.FileNotFoundException: /opt/tomcat-6/conf/Catalina/localhost/host-manager.xml (Permission denied) 
... 

而且,webapp的个XML都在那里和所有权和权限都“的tomcat:雄猫”和“ 644" 。

对我来说,解决方案是设置Tomcat喜欢的全部权限,即“0755”。

而且,作为安全意识的备注,该实现的server.xml使用JDBC Realm进行身份验证,所以我们甚至不使用tomcat-users.xml。因此,它是安装时提供的默认文件,甚至可以将默认用户帐户(例如“tomcat”和“manager”)注释掉。我知道在Tomcat-7中,tomcat-users.xml中的帐户是默认注释的。

HTH。

相关问题