windows server 2008 下 apache2.4 配置多个 django应用。

试了很多次,要注意几点。

一、安装wsgi_mod

wsgi_mod使用的是python的一个库,没有使用网上的方式:LoadModule wsgi_module modules/mod_wsgi.so

LoadFile "d:/python3/python36.dll"
LoadModule wsgi_module "d:/python3/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "d:/python3"

二、配置需要监听的端口

打开Apache配置文件(Apache安装目录下:conf/httpd.conf)

找到#Listen 12.34.56.78:80

在下方添加需要监听的端口,以8111,8222为例

Listen 127.0.0.1:8111
Listen 127.0.0.1:8222

若要让局域网内其他用户可以访问:

Listen 0.0.0.0:8111
Listen *:8222

以上两种方法均可

三、开启虚拟路由

找到#LoadModule vhost_alias_module modules/mod_vhost_alias.so,建议直接搜索
将行首的#删除,取消注释,使其生效
找到#Include conf/extra/httpd-vhosts.conf
同样将行首的#删除,使其生效,包含这个配置文件,接下来我们就是去编辑该文件。

四、配置项目映射

打开httpd-vhosts.conf文件(Apache安装目录下conf/extra/httpd-vhosts.conf)
打开文件后,文件下面有一些类似下面这样的配置


ServerName xxxx.example.com
ServerAlias www.xxxx.example.com
...

删除原有配置
编写自己的配置进去



    # 这里填写域名,没有域名随便填写即可

    ServerName test.com

    ServerAlias a.test.com

 
    # 项目的wsgi.py文件,注意目录前有`/`和空格

    WSGIScriptAlias / C:\web\DjangoBlog\DjangoBlog/wsgi.py

    

    

        Require all granted

    

    

    
    # 静态文件路径

    Alias /static C:\web\DjangoBlog\collectedstatic
    

        AllowOverride None

        Options None

        Require all granted

    

    
        # 项目根路径,经测试,这个写到项目所在文件夹或者直接进入文件夹内都可以

    DocumentRoot "C:\web\DjangoBlog"

    

        Options Indexes FollowSymLinks

        AllowOverride None

        Require all granted

    

    
    # 错误日志记录文件

    ErrorLog "logs/djangoblog.log"







    # 这里填写域名,没有域名随便填写即可

    ServerName test2.com

    ServerAlias a.test2.com

 
    # 项目的wsgi.py文件,注意目录前有`/`和空格

    WSGIScriptAlias / C:\web\logistics\logistics\wsgi.py

    

    

        Require all granted

    

    

    
    # 静态文件路径

    Alias /static C:\web\logistics\collectedstatic
    

        AllowOverride None

        Options None

        Require all granted

    

    
        # 项目根路径,经测试,这个写到项目所在文件夹或者直接进入文件夹内都可以

    DocumentRoot "C:\web\logistics"

    

        Options Indexes FollowSymLinks

        AllowOverride None

        Require all granted

    

    
    # 错误日志记录文件

    ErrorLog "logs/logistics.log"




五、在wsgi.py中添加项目路径

打开项目的wsgi.py文件
添加

import os
import sys

from django.core.wsgi import get_wsgi_application

sys.path.append('C:\web\logistics\logistics')
sys.path.append('C:\web\logistics')

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'logistics.settings')

application = get_wsgi_application()

你可能感兴趣的:(windows server 2008 下 apache2.4 配置多个 django应用。)