【发布时间】:2019-03-20 12:36:58
【问题描述】:
在我的项目中,我创建了一个 servlet,用户可以在其上上传媒体文件。这些文件将根据上下文参数中的路径保存。在我家的 Windows 电脑上,它运行良好。但是,在我的 linux vps 上,localhost.log 文件中出现此权限被拒绝错误。
java.io.IOException: Permission denied
at java.base/java.io.UnixFileSystem.createFileExclusively(Native Method)
at java.base/java.io.File.createNewFile(File.java:1024)
at post.Upload.doPost(Upload.java:194)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:660)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
该文件应该在 /var/sociogram/media/public 上创建和写入。我试过了
chown -R tomcat:tomcat /var/sociogram/media
并且当我这样做时对用户具有读写权限
ls -l /var/sociogram/media
【问题讨论】:
-
你能把日志贴在这里吗?
-
@htopiwala 我已经粘贴了日志。这是我唯一拥有的东西。 catalina.out 没有打印异常
标签: java tomcat servlets centos