Django Windows环境下部署

环境准备

以我部署的环境为例:Windows10 64位+Python3+Django1.11+Apache2.4+mod_wsgi

在本文中,我着重介绍在部署Django过程中关于mod_wsgi的安装和在Apache httpd.conf中的关键配置内容,其余部分的安装和配置,可参考本站相关链接内容。

总体而言,在Windows下部署Django比在Linux下部署要简单得多。

Python虚拟环境

略。详见本站链接:Python虚拟环境安装

Apache安装与配置

略。Apache安装与配置详见本站链接:Apache安装Apache配置

安装mod_wsgi和获取其配置信息

mod_wsgi官方下载:http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi

下载好了,现在进入Python虚拟环境,执行如下命令进行安装和获取其配置信息(mod_wsgi-express module-config

 

Django与Apache的配置

在httpd.conf配置文件末尾添加以下内容。

##----- Django项目部署 -----##
# 添加"mod_wsgi.so"模块,这三行都是命令"mod_wsgi-express module-config"显示出来的
LoadFile "c:/python36/python36.dll"
LoadModule wsgi_module "e:/eduonline/vpyedu/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "e:/eduonline/vpyedu"

# 指定项目的"wsgi.py"配置文件路径
WSGIScriptAlias / "E:/EduOnline/eduonline/eduonline/wsgi.py"

# 指定Django项目根目录,并配置访问权限
WSGIPythonPath  "E:/EduOnline/eduonline"
<Directory "E:/EduOnline/eduonline">
    Require all granted
</Directory>

# 项目静态文件配置 
Alias /static "E:/EduOnline/eduonline/collectstatic"
<Directory "E:/EduOnline/eduonline/collectstatic">
    AllowOverride None
    Options None
    Require all granted
</Directory>

# 项目media文件配置, 用户上传图片等媒体文件
Alias /media "E:/EduOnline/eduonline/media"
<Directory "E:/EduOnline/eduonline/media">
    AllowOverride None  
    Options None  
    Require all granted  
</Directory>

然后进入Django项目的settings.py文件下进行配置。

# 上线时必须将DEBUG设为False
DEBUG = False

# 可指定主机,若元素为'*',表示所有同一局域网内的网络均可被访问
ALLOWED_HOSTS = ['*']

重启Apache服务

修改完配置后,只需重启Apache服务即可,此时会连着wsgi服务一并重启,因为httpd.conf配置中加载了mod_wsgi模块。

CMD重启Apache命令:

httpd -n apache -k restart         # apache为Windows托管服务名
net stop apache 然后 net start apache     # Windows服务管理命令,没有restart

测试效果

访问测试:在浏览器地址栏输入"www.wcwnina.com:8080"或"localhost:8080"回车就可以进入Django项目网站了!其中www.wcwnina.com为httpd.conf中配置的主机域名ServerName。

效果:

  至此。转载请注明出处。

[ 本站相关链接:>>Linux环境下部署Django ]

猜你喜欢

转载自www.cnblogs.com/wcwnina/p/9974642.html