代码之家  ›  专栏  ›  技术社区  ›  potato

文件夹权限,以便rsync和move_上载的_文件工作

  •  0
  • potato  · 技术社区  · 6 年前

    我已经设置了一个接受上传文件并将其存储在 /backend/upload 文件夹。我正在使用 move_uploaded_file 为了达到这个目的。

    和往常一样,在 后端/上传 使用时 移动上传的文件 . 为了修复它,我将文件夹的所有者更改为 apache . 这些是我的 后端/上传 权限:

    drwxrw----  2 apache myuser 4096 Jan 22 23:35 upload
    

    使用此权限,我可以成功将文件上载到上载文件夹,但用户 myuser 看不懂。 迈塞尔 小组已经读写了许可证,所以它无法读取文件夹有点奇怪。我这里缺什么?

    现在,它不是最佳的,但是我可以忍受不能通过 迈塞尔 . 引起更多麻烦的是 rsycn 现在无法上载文件,因为它没有访问权限 upload 文件夹。根ssh访问被禁用。

    你推荐我做什么?理想的 迈塞尔 将能够访问 上传 文件夹, 移动上传的文件 将能够上传和rsync将工作。我找到了许多建议使用777权限的答案,并且与警告不要这样做的数量大致相同。

    也: 我试图将组和所有者改为:

    drwxrw----  2 myuser apache 4096 Jan 22 23:35 upload
    

    但这不适用于 移动上传的文件 ,即使Apache组具有读写权限。

    1 回复  |  直到 6 年前
        1
  •  1
  •   Marcel Preda    6 年前

    实际上,目录的“x”访问意味着可以访问目录的内容。 检查此链接: https://askubuntu.com/questions/862289/difference-between-executable-directory-vs-executable-files 因此,您必须将访问权限更改为770。 或者您将其设置为700,让Apache用户作为所有者,当您需要访问内容时,您必须切换到Apache用户,这是一个安全的解决方案。