linux 给 tomcat 的权限问题

小猫王 发布于 2013/02/05 18:53
阅读 7K+
收藏 1

我用普通用户oldman运行tomcat后,能访问网站,但图片上传不了,验证码也不出来;用root启动tomcat就正常;

比如:我的项目在tomcat - webapps 下的ROOT目录里,

我设的权限:

chown oldman -R ROOT; oldman是ROOT的拥有者;

chmod 771 -R ROOT;像这样都不行;

试了半天都弄不好,不知道还要改哪里的权限?    难道tomcat里还有缓存目录....


加载中
0
bingl
bingl

图片传到哪去? tomcat错误日志贴下。

魔力猫
魔力猫
回复 @万里码 : 哪有你这么干的。ROOT账户是高危账户,没有必要不要使用。如果ROOT帐号被攻破,那么对方一个rm命令就可以把你整个硬盘清空。你应该好好补补Linux知识和网络安全知识。建一个专门运行Tomcat的账户,把保存图片目录的权限给这个账户。
小猫王
小猫王
整个项目包括图片都传在ROOT目录里;catalina.out里没有错误信息;
0
axhack
axhack

你看你上传文件之后的权限是什么?

我用的是acl配置的tomcat权限,然后tomcat目录权限给:

setfacl -R -m d:u:tomcat1:rwx /tomcat1 #设置tomcat1目录默认权限是用户tomcat1

setfacl -R -m d:g:root:rwx /tomcat1 #设置tomcat1目录默认权限组是root

当然前提的是tomcat以tomcat1用户启动。

小猫王
小猫王
弄好了
0
litescript
litescript
錯誤日誌
小猫王
小猫王
catalina.out里没有错误信息;
0
小猫王
小猫王

引用来自“axhack”的答案

你看你上传文件之后的权限是什么?

我用的是acl配置的tomcat权限,然后tomcat目录权限给:

setfacl -R -m d:u:tomcat1:rwx /tomcat1 #设置tomcat1目录默认权限是用户tomcat1

setfacl -R -m d:g:root:rwx /tomcat1 #设置tomcat1目录默认权限组是root

当然前提的是tomcat以tomcat1用户启动。

用root 启动tomcat能上传成功

0
bingl
bingl

看下log4j .

小猫王
小猫王
改了两个地方的权限就好了,1.strtus2的缓存目录在 根目录下/strutsUploadCache 2.tomcat的 work 缓存目录,谢谢
0
捏造的信仰
捏造的信仰
首先查看 tomcat 的 logs 目录下的相关错误信息
小猫王
小猫王
昨天真没显示错误信息,今天早再试的时候报缓存问题,改了两个地方的权限就好了,1.strtus2的缓存目录在 根目录下/strutsUploadCache 2.tomcat的 work 缓存目录,谢谢
0
小猫王
小猫王

改了两个地方的权限就好了,都加上了可写权限:

1.strtus2的缓存目录在   根目录下/strutsUploadCache ,加上rwx

2.tomcat的 work 缓存目录,单独加上rwx

我记得是

chmod 771 -R ROOT;ROOT/work我也不知道为什么work目录组权限没 自动加上 可写权限;

魔力猫
魔力猫
劳驾多学学Linux系统安全常识吧。
0
白起
白起
先把错误的日志内容贴出来,才能帮你看.
0
bingl
bingl

如果我没记错可以在xml里面指定上传pic的临时目录,该问题即可解决!

返回顶部
顶部