如何允许在 Apache 上运行的 Django 应用程序访问使用 sshfs 挂载的远程目录

如何允许在 Apache 上运行的 Django 应用程序访问使用 sshfs 挂载的远程目录

我有一个 Django 应用程序,它访问使用 sshfs 挂载的远程目录以上传文件。Django 应用程序也必须读取这些文件。该设置在 Django 服务器 (runserver) 上运行良好。我认为这是因为 Django 服务器以当前用户身份运行,因此它可以访问远程挂载。但是,当同一个应用程序在 Apache 服务器上运行时,我无法访问远程挂载目录。我假设这可能是因为 Apache 守护程序尝试以 www-data 用户身份访问该文件夹,而由于它不是创建挂载的用户,因此无法访问远程文件夹。

所以问题是,我该如何克服这个问题?我添加了指令:

WSGIDaemonProcess my.server.com user=myuser group=mygroup

current-site.conf文件,希望如果 python 进程运行,myuser那么访问应该与 Django 服务器相同,但这没有帮助。

有任何想法吗?

答案1

我找到了一个解决方案。我必须使用以下选项挂载远程文件夹allow_other

> sudo sshfs -o allow_other [email protected]:/remote_folder/ ~/local/mount/folder/

相关内容