我必须将我的 wsgi.py 与我的 django 项目文件夹隔离吗?



我应该把 wsgi.py 放在哪里?
我必须将其与我的 django 项目文件夹隔离吗?
我应该把我的 django 项目文件夹移到我的主目录之外吗?

目前我将我的 django 项目文件夹复制到/home/username/djangosites/project/,
我的 wsgi.py 在文件夹/home/username/djangosites/project/project/在同一
文件夹中有像 settings.py urls.py 这样的文件......

来自 modwsgi 文档:

"请注意,强烈建议使用 WSGI 应用程序脚本 在这种情况下,文件不能放置在 的现有文档根目录中 您的主 Apache 安装或您正在设置的特定站点 它起来了。这是因为如果该目录正在以其他方式使用 作为静态文件的源,应用程序的源代码 也许可以下载。

您也不应该使用用户帐户的主目录,因为这样做 这意味着允许Apache提供该帐户中的任何文件。 在这种情况下,Apache的任何错误配置最终都可能暴露您的 整个帐户下载。

因此,建议设置一个不同于 其他目录,该目录中唯一的内容是 WSGI应用程序脚本文件,如有必要,任何支持文件 需要。

wsgi.py,但不要让 DocumentRoot 像/home/username/djangosites/project/这样的东西,这会暴露你的 Python 脚本源代码,这对恶意用户肯定会非常有帮助。

您只需要公开STATIC_ROOT(在STATIC_URL上(和MEDIA_ROOT(在MEDIA_URL上(,您可以使用 Alias 指令。另一种解决方案是使用 dj-static。

最新更新