我是否必须将我的wsgi.py与我的django项目文件夹隔离开来?

时间:2017-07-26 16:53:04

标签: python django apache mod-wsgi

我应该在哪里放置我的wsgi.py?
我是否必须将它与我的django项目文件夹隔离开来?
我应该将django项目文件夹移到我的主目录之外吗?

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

这样的文件

来自modwsgi文档:

  

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

     

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

     

因此建议设置一个与之不同的特殊目录   其他目录,该目录中唯一的东西是   WSGI应用程序脚本文件,如有必要,还有任何支持文件   要求"

1 个答案:

答案 0 :(得分:1)

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

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