Tomcat写入权限apache服务器用户上传



当用户上传图像时,文件将在"var/www/example.com/uploads";通过tomcat-webapp,让apache可以提供图像。然而,tomcat组/用户创建了该文件,因此无法通过example.com/uploads/image.jpg访问该文件,除非我手动更改读取权限,否则该文件将不再被禁止。但是,每个文件都是在没有读取权限的情况下创建的。我对ubuntu不太熟悉,也不知道是需要在javaservlet中更改某些内容,还是更改到文件夹/组/用户。如有任何帮助,我们将不胜感激。

-rw-r----- 1 tomcat tomcat 120264 Jul 14 19:26 second-image.jpg
-rw-r--r-- 1 tomcat tomcat 172853 Jul 14 19:05 image.png

编辑:该文件以多部分配置表单数据的形式提交。在检查了类型、大小等之后,它被简单地写入系统:

Path imageDir = Path.of("/var/www/example.com/uploads");
Path imageFile = Files.createFile(imageDir.resolve(fileName).toAbsolutePath());
part.write(imageFile.toString());

您的应用程序代码已经在调用一个能够设置权限的方法,但没有提供这样做的参数。您可以阅读本教程中的文件属性,以查看设置文件权限的示例。我猜你会想从字符串中创建权限,因为你已经在使用以下格式:

Set<PosixFilePermission> perms =
PosixFilePermissions.fromString("rw-------");
FileAttribute<Set<PosixFilePermission>> attr = PosixFilePermissions.asFileAttribute(perms);
Files.createFile(file, attr);

相关内容

  • 没有找到相关文章

最新更新