如何在 Apache Windows 上的不同虚拟环境中提供 2 个 Django 应用程序?
How can I serve 2 Django applications in different virtual environments on Apache Windows?
我目前在没有虚拟环境的服务器上有两个 Django 应用程序 运行(这不是个好主意 - 这是菜鸟犯的错误)。由于一些依赖差异,我现在必须区分它们的环境。
由于 WSGIDaemonProcess
在 Windows 上不可用,我在 Wamp 中按以下方式管理它:
这是我httpd.conf的相关部分:
WSGIPythonPath "C:/wamp/www"
WSGIScriptAlias /im "C:/wamp/www/im/im/wsgi.py"
<Directory "C:/wamp/www/im/im">
<Files wsgi.py>
Order deny,allow
Require all granted
</Files>
</Directory>
Alias /im/static/ "C:/wamp/www/im/im/static_root/"
WSGIScriptAlias /tggs "C:/wamp/www/tggs/tggs/wsgi.py"
<Directory "C:/wamp/www/tggs/tggs">
<Files wsgi.py>
Order deny,allow
Require all granted
</Files>
</Directory>
Alias /tggs/static/ "C:/wamp/www/tggs/static_root/"
您可能已经猜到我的两个 Django 应用程序分别称为 "im" 和 "tggs"。此时没有关于 virtualenv 的任何信息。以下是应用程序 "tggs" 的 wsgi.py
,我想在 C:\pyenv\tggs18
中的 virtualenv 中 运行
import os
import sys
import site
ALLDIRS = ["C:\pyenv\tggs18\Lib\site-packages"]
# Add each new site-packages directory.
for directory in ALLDIRS:
site.addsitedir(directory)
sys.path.append("C:/wamp/www/tggs/tggs")
sys.path.append("C:/wamp/www/tggs")
activate_env_file = "C:\pyenv\tggs18\Scripts\activate_this.py"
execfile(activate_env_file, dict(__file__=activate_env_file))
os.environ["DJANGO_SETTINGS_MODULE"] = "tggs.settings"
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
您还应该检查:
我目前在没有虚拟环境的服务器上有两个 Django 应用程序 运行(这不是个好主意 - 这是菜鸟犯的错误)。由于一些依赖差异,我现在必须区分它们的环境。
由于 WSGIDaemonProcess
在 Windows 上不可用,我在 Wamp 中按以下方式管理它:
这是我httpd.conf的相关部分:
WSGIPythonPath "C:/wamp/www"
WSGIScriptAlias /im "C:/wamp/www/im/im/wsgi.py"
<Directory "C:/wamp/www/im/im">
<Files wsgi.py>
Order deny,allow
Require all granted
</Files>
</Directory>
Alias /im/static/ "C:/wamp/www/im/im/static_root/"
WSGIScriptAlias /tggs "C:/wamp/www/tggs/tggs/wsgi.py"
<Directory "C:/wamp/www/tggs/tggs">
<Files wsgi.py>
Order deny,allow
Require all granted
</Files>
</Directory>
Alias /tggs/static/ "C:/wamp/www/tggs/static_root/"
您可能已经猜到我的两个 Django 应用程序分别称为 "im" 和 "tggs"。此时没有关于 virtualenv 的任何信息。以下是应用程序 "tggs" 的 wsgi.py
,我想在 C:\pyenv\tggs18
import os
import sys
import site
ALLDIRS = ["C:\pyenv\tggs18\Lib\site-packages"]
# Add each new site-packages directory.
for directory in ALLDIRS:
site.addsitedir(directory)
sys.path.append("C:/wamp/www/tggs/tggs")
sys.path.append("C:/wamp/www/tggs")
activate_env_file = "C:\pyenv\tggs18\Scripts\activate_this.py"
execfile(activate_env_file, dict(__file__=activate_env_file))
os.environ["DJANGO_SETTINGS_MODULE"] = "tggs.settings"
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
您还应该检查: