【问题标题】:Setup of Flask App Directory and Permissions?Flask 应用程序目录和权限的设置?
【发布时间】:2014-09-30 22:02:59
【问题描述】:
我在 ubuntu 服务器上构建了一个简单的烧瓶应用程序,并将代码放在以下目录中:
主应用代码:/home/user/flaskapp
WSGI 配置:www/flaskapp/app.wsgi
我的问题是:
- 在生产环境中将应用代码放置在我的主目录中是否可行?
- 我的文件夹权限中应该包含哪些内容才能运行安全/可靠的网站?
- 我的 Ubuntu 用户名为“flask_user”,我应该给它任何特殊权限或组吗?
【问题讨论】:
标签:
python
security
ubuntu
flask
【解决方案1】:
我了解到您正在使用 Apache 或 Nginx 作为您的 Web 服务器。如果正确,我会将您的应用程序代码和 app.wsgi 文件都放在您的主目录中。
在某些情况下,将文件放在 /var/www 中可以让外界看到它(除非您明确指定它被您的网络服务器忽略/拒绝网络服务器访问)。除非明确指定,否则将其放置在 /home/user 不允许外界看到它。
至于权限,您需要授予 Web 服务器用户(在 Apache 中通常为 www-data,除非 flask_user 也是您的 Web 服务器用户)对 WSGI 文件的读取权限,并且可能还需要执行权限。不确定其他 python 文件的权限,但这很容易测试。首先拒绝您的 Web 服务器用户对该文件的所有权限。如果这不起作用,请授予它读取权限,依此类推,直到站点正常运行。这将是所需的最低权限。