Drupal 8:如何为节点使用私有文件系统

Drupal 8: How to use private file system for node

场景: 我想创建一个字段字段并将其附加到内容类型,并愿意将上传的文件存储到私有文件系统中。 我正在使用 Drupal 8.6、php 7.1 和 linux

我的默认文件系统是public,但对于那个特定的文件字段,我想将它存储到私人文件夹中。所以我在我的文档根文件夹之外创建了一个文件夹,例如/var/www/private 并将其设置为 settings.php.

此字段的目的是允许某些登录用户能够下载和限制其他用户。

我在谷歌上搜索了很多,有很多建议,none 解决了或指出了我面临的问题。我将文件目录设置为"dcouments/[date:custom:Y]-[date:custom:m]".

现在,当我尝试上传文件时,出现错误,例如无法创建文件夹 "documents/2018-09" 并且上传失败。当然这似乎是权限问题,我将 "private" 文件夹授予 "rwxrwxr-x" 权限,但它不起作用。奇怪的是它在 windows 系统中工作。

任何人都可以建议,如何解决这个问题?哪里出了问题?

提前致谢!

您定义的权限可能没问题。问题可能是私人文件夹不属于 www-data 也不属于其组。检查文件夹的真实所有者并将其设置为 www-data。这应该可以解决问题。

我发现,网络服务器没有在私有文件夹中创建子目录的权限。