【问题标题】:Deploying Multiple Django Websites with Apache & mod_wsgi Windows使用 Apache 和 mod_wsgi Windows 部署多个 Django 网站
【发布时间】:2021-01-15 16:30:49
【问题描述】:

我在带有 Apache 2.4 的 virtualenv 中使用 mod_wsgi,我想从同一台服务器为多个 Django 站点提供服务。

httpd.config

### Configuration Site_1
LoadModule wsgi_module " S:/Site_1/VirtualEnvSite_1/Lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
WSGIApplicationGroup %{GLOBAL}
WSGIPythonHome "c:/users/mmyuser/appdata/local/programs/python/python36"
WSGIScriptAlias / " S:/Site_1/site_1/site_1/wsgi_windows.py"
WSGIPythonPath " S:/Site_1/VirtualEnvSite_1/Lib/site-packages"

Alias /static " S:/Site_1/site_1/staticfiles"
Alias /media " S:/Site_1/site_1/media"

<Directory " S:/Site_1/site_1/staticfiles">
    Require all granted
</Directory>

<Directory " S:/Site_1/site_1/media">
    Require all granted
</Directory>

<Directory " S:/Site_1/site_1/PEQ">
    <Files wsgi_windows.py>
        Require all granted
    </Files>
</Directory>

####Configuration Site_2
LoadModule wsgi_module " S:/Site_2/VirtualEnvSite_2/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
WSGIApplicationGroup %{GLOBAL}
WSGIPythonHome "c:/users/myuser/appdata/local/programs/python/python36"
WSGIScriptAlias / " S:/Site_2/site_2/site_2/wsgi_windows.py"
WSGIPythonPath " S:/Site_2/VirtualEnvSite_2/Lib/site-packages"

Alias /static " S:/Site_2/site_2/staticfiles"
Alias /media " S:/Site_2/site_2/media"

<Directory " S:/Site_2/site_2/staticfiles">
    Require all granted
</Directory>

<Directory " S:/Site_2/site_2/media">
    Require all granted
</Directory>

<Directory " S:/Site_2/site_2/site_2">
    <Files wsgi_windows.py>
        Require all granted
    </Files>
</Directory>

httpd-vhosts.config

# Virtual Hosts
#
<VirtualHost *:8080>
    ServerAdmin webmaster@localhost
    DocumentRoot "c:/wamp/www"
    ServerName localhost
    ErrorLog "logs/localhost-error.log"
    CustomLog "logs/localhost-access.log" common
</VirtualHost>

我已经查看了这些帖子:

  1. Deploying multiple django apps on Apache with mod_wsgi
  2. multiple-django-sites-with-apache-mod-wsgi
  3. running-multiple-django-projects-on-one-apache-instance-with-mod_wsgi/
  4. Múltiples direcciones, un solo proyecto
  5. how-to-use-mod-wsgi-for-hosting-multiple-django-projects-under-single-domain

但它们对我没有用。

服务器是 Windows Server 2012R2

请指导我应该怎么做才能让这两个网站都启动并运行。

注意:网站完全独立工作

【问题讨论】:

  • 我也有类似的问题!单个应用程序使用反向代理正确运行。但是当我同时激活两者时,其中之一会给出错误:AH00128: File does not exist: /var/www/html/myapp2/。配置文件完全相同。

标签: python django apache windows-server-2012-r2


【解决方案1】:

我也有类似的问题。而且我已经查找了很多帖子,我注意到与您的不同之处在于:

WSGIScriptAlias / " S:/Site_1/site_1/site_1/wsgi_windows.py"
WSGIScriptAlias / " S:/Site_2/site_2/site_2/wsgi_windows.py"

我在别名中标识该站点:

WSGIScriptAlias /site1 " S:/Site_1/site_1/site_1/wsgi_windows.py"
WSGIScriptAlias /site2 " S:/Site_2/site_2/site_2/wsgi_windows.py"

我正在使用进程守护进程:

WSGIScriptAlias /site1 /site1/wsgi.py
WSGIDaemonProcess site1_proc python-path=S:/Site_1/VirtualEnvSite_1/Lib/site-packages python-home="c:/users/mmyuser/appdata/local/programs/python/python36"
WSGIProcessGroup site1_proc 

就我而言,由于某些其他原因,它仍然无法正常工作。我还没有确定。单个应用程序使用反向代理正确运行。但是当我同时激活两者时,其中一个会给出错误:AH00128: File does not exist: /var/www/html/myapp2/。配置文件完全相同。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-19
    • 2014-07-31
    • 2011-07-14
    • 2012-06-17
    • 1970-01-01
    • 2012-07-15
    • 2012-08-21
    • 1970-01-01
    相关资源
    最近更新 更多