如果在使用 apache 部署时,wsgi.py 在服务器上执行而不是在 virtualenv 中,那么 django virtualenv 有什么意义?
What is the point of a django virtualenv, if when deploying with apache, wsgi.py is executed on the server NOT in the virtualenv?
我将我的 apache 配置设置为指向我的 virtualenv,但是当我加载页面并查看错误日志时,它给出了以下错误:
from django.core.wsgi import get_wsgi_application
ImportError: No module named django.core.wsgi
apache2 000-default.conf 文件:
WSGIDaemonProcess project python-home=/home/django/config/env python-path=/usr/local/bfx/Databases/project
WSGIProcessGroup project
WSGIScriptAlias / /usr/local/bfx/Databases/project/project/wsgi.py
基本上,如果我在我的服务器上安装 django 和我所有的 django 包,它就可以工作,但是虚拟环境有什么意义?
谢谢
Virtualenv 允许创建隔离环境。因此,例如,您可以创建和 运行 具有同一库的不同版本的多个项目而不会发生冲突。
您还必须在服务器中安装所有库。 Virtualenv 不创建包也不部署它。
我将我的 apache 配置设置为指向我的 virtualenv,但是当我加载页面并查看错误日志时,它给出了以下错误:
from django.core.wsgi import get_wsgi_application
ImportError: No module named django.core.wsgi
apache2 000-default.conf 文件:
WSGIDaemonProcess project python-home=/home/django/config/env python-path=/usr/local/bfx/Databases/project
WSGIProcessGroup project
WSGIScriptAlias / /usr/local/bfx/Databases/project/project/wsgi.py
基本上,如果我在我的服务器上安装 django 和我所有的 django 包,它就可以工作,但是虚拟环境有什么意义?
谢谢
Virtualenv 允许创建隔离环境。因此,例如,您可以创建和 运行 具有同一库的不同版本的多个项目而不会发生冲突。
您还必须在服务器中安装所有库。 Virtualenv 不创建包也不部署它。