我正在尝试使用 Nginx 在 CentOS 7 服务器上启动 Pydio。我发现一切正常,我的意思是我收到 Pydio 错误,它是由 Pydio 生成的。
无法写入 AJXP_DATA_PATH 文件夹:请确保授予您的网络服务器对此文件夹的写访问权限!
我检查过了。我的 AJXP_DATA_PATH 指向 /home/pydio,并且 nginx 用户具有读/写权限。该用户正在运行 nginx 工作进程和 php-fpm。
那么,为什么它说我没有对数据文件夹的写权限呢?
我在 Google 上搜索过,只有一种解决方案,设置写入权限,但我已经设置了。有什么想法吗?
答案1
你可能打中了SELinux限制:默认情况下,Web 服务器进程不允许访问用户主目录中的任何内容。
有两种方法可以解决此问题:
(首选)将 Web 应用程序重新定位到 SELinux 允许的目录,例如 的子目录
/srv/www
(例如/srv/www/pydio
)。如果您的 Web 应用程序可能需要写数据到文件系统,然后你就可以标记可写目录和semanage fcontext
之后。或者
通过设置允许 Web 服务器读取主目录中的文件合适的SELinux布尔值:
setsebool -P httpd_read_user_content 1
请注意,绝不允许 Web 服务器写到主目录,因此如果您需要写入文件系统,请参阅其他选项。