如何让mod_wsgi拿起我的virtualenv

时间:2017-03-08 02:14:41

标签: python flask virtualenv mod-wsgi

我对使用Flask-

非常陌生

根据http://flask.pocoo.org/docs/0.12/deploying/mod_wsgi/

标题下的#34;使用虚拟环境" 我读到了:

  

对于Python 3,将以下行添加到.wsgi文件的顶部:

activate_this = '/path/to/env/bin/activate_this.py'
with open(activate_this) as file_:
    exec(file_.read(), dict(__file__=activate_this)) This sets up the load paths according to the settings of the virtual environment.
     

请记住,路径必须是绝对的。

激活我的venv我使用linux的命令:

 my_env/bin/activate

我查看了my_env / bin /目录,但没有看到任何.py文件。 我想在my_env / bin /中创建一个.py文件,该文件将被.wsgi文件调用吗?

2 个答案:

答案 0 :(得分:8)

我遇到了同样的问题,解决方案实际上很简单。您需要安装libapache2-mod-wsgi-py3而不是libapache2-mod-wsgi。后者用于python 2。

然后可以通过将环境的站点程序包添加到系统路径来激活环境。例如,对于我(使用venv),我可以通过将以下行添加到我的*.wgsi文件中来实现。

sys.path.insert(0,"/path/to/venv/lib/python3.8/site-packages")

答案 1 :(得分:2)

如果您使用的是mod_wsgi,请阅读以下文档: