Windows下用Apache、mod_wsgi部署Django网页服务器实践小结

一、环境准备:

1.主要软件版本:

--Windows Server 2012 x64

--[Apache Lounge Distribution  Apache 2.4.23 win64 VC10](http://www.apachelounge.com)

--Python 3.4.2  MSC1600 该版本是用VC10编译的

--mod_wsgi-py34-VC10.so

--Django(1.10.6)及其他的第三方库

注意:上述软件版本必须都是64位,且用VC10(visual sudio  2010)编译。

2.软件安装

--安装Python,Django和第三方库,配置好环境变量,即把相关路径在环境变量中设置PYTHONPATH。

--安装Apache并配置,httpd.conf文件

ServerName localhost:88

ServerRoot "c:/Apache24"  #我的安装位置

Listen 88  #避免与其他已使用端口相同

-- 通过‘C:\Apache24\bin\httpd.exe’启动服务,打开网站,显示“It works!”,则表示Apache基本配置完成。

--下载mod_wsgi.so文件(比较难找,一定要兼容的版本,如果安装更高级的Python版本,则要自行编译)拷贝到Apache/modules文件夹下,并在httpd.conf文件中加载:

LoadModule wsgi_module modules/mod_wsgi.so #注意mod_wsgi应与实际文件名一致

二、Django部署

1.部署准备

--在settings.py中关闭DEBUG

DEBUG=False

TEMPLATE_DEBUG=False

ALLOWED_HOSTS= ['xx.xx.xx.xx']   #配置主机ip

--在settings.py中配置生产端数据库

​DATABASES= {'default':

{'ENGINE':'django.db.backends.mysql',

'NAME':'xxx',#数据库名称'

USER':'xxx',#用户名

'PASSWORD':'xxx',  #密码

'HOST':'127.0.0.1',  #数据库主机ip,如为本机,则填'127.0.0.1

''PORT':'3306',}  #服务器端口

}

--wsgi文件,新版本wsgi文件在新建Django工程时自动建立,基本不用动

import os,sys

​from django.core.wsgi import get_wsgi_application​sys.path.append('C:/Apache24/htdocs/mysite')  #如提示无法导入wsgi,可增加此路径​os.environ.setdefault("DJANGO_SETTINGS_MODULE","mysite.settings")​application=get_wsgi_application()

在settings.py中修改template文件夹地址

TEMPLATES= [

{'BACKEND':'django.template.backends.django.DjangoTemplates',

'DIRS': ["C:/Apache24/htdocs/mysite/myTemplate",],    #设置生产端的TEMPLATES地址#以下省略...

},]

2.将已开发完成的Django项目文件夹拷贝到“C:\Apache24\htdocs”中,并在httpd.conf文件中完成配置

WSGIScriptAlias / C:/Apache24/htdocs/mysite/mysite/wsgi.py  #指定wsgi路径WSGIPythonPath C:/Apache24/htdocs/mysite          #指定Django项目路径


Require all granted

Alias /static/ C:/Apache24/htdocs/mysite/static/  #静态文件路径配置

AllowOverride None

Options None

Require all granted


3.到这里就配置完成了,启动服务,打开网站,就会显示你之前开发的Django网站。

如果出现异常,可以到‘C:\Apache24\logs\error.log’查看错误原因并逐一排查。

你可能感兴趣的:(Windows下用Apache、mod_wsgi部署Django网页服务器实践小结)