Django Windows环境下部署
环境准备
本文将介绍如何在Windows系统上部署Django web项目,本次部署基于下面的架构:
Windows10 64位 + Python3.6 + Django1.11 + Apache2.4 + mod_wsgi
在本文中,我着重介绍在部署Django过程中关于mod_wsgi的安装和在Apache httpd.conf中的关键配置内容,其余部分的安装和配置,可参考本站相关链接内容自行解决。
各位先莫慌,总体而言,在Windows下部署Django比在Linux下部署要简单得多!相信我,跟着我写的来,分分钟搞定。走起,Now!
Python虚拟环境
本节略。详见本站链接,戳这里>>Python虚拟环境安装。
Apache安装与配置
本节略。详见本站链接,戳这里>>Apache安装、Apache配置。对于Django,无需配置虚拟目录。
安装mod_wsgi和获取其配置信息
进入Python扩展库官网下载mod_wsgi模块:http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi

下载好了,现在进入Python虚拟环境,执行如下命令进行安装(用pip安装)和获取其配置信息(输入:mod_wsgi-express module-config),后面的配置中会用到这些配置信息。

Django与Apache的配置
首先记得修改:
Define SRVROOT "C:/Program Files/Apache24" # 修改Apache实际绝对安装目录
Listen 8080 # 监听端口
ServerName www.wcwnina.com:8080 # 可访问的主机,域名。需要在Windows的hosts文件中做IP映射
然后在 httpd.conf 配置文件末尾添加以下内容:
##--------------- Django项目部署配置 ---------------##
# 声明项目根目录变量
Define DjangoRoot "D:/EduOnline/eduonline" # 添加"mod_wsgi.so"模块,这三行都是命令"mod_wsgi-express module-config"显示出来的
LoadFile "C:/Program Files/Python36/python36.dll"
LoadModule wsgi_module "d:/eduonline/vpy-eduonline/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "d:/eduonline/vpy-eduonline" # 指定项目的"wsgi.py"配置文件路径
WSGIScriptAlias / "${DjangoRoot}/eduonline/wsgi.py" # 指定Django项目根目录,并配置访问权限。WSGIPythonPath取代DocumentRoot配置,或者保留DocumentRoot一致
WSGIPythonPath "${DjangoRoot}"
<Directory "${DjangoRoot}">
Require all granted
</Directory> # 项目静态文件配置
Alias /static "${DjangoRoot}/static"
<Directory "${DjangoRoot}/static">
AllowOverride None
Options None
Require all granted
</Directory> # 项目media文件配置, 用户上传图片等媒体文件
Alias /media "${DjangoRoot}/media"
<Directory "${DjangoRoot}/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 -k restart -n apache # apache为Windows托管服务名
或:
net stop apache 然后 net start apache # Windows服务管理命令,没有restart
测试效果
访问测试:在浏览器地址栏输入"www.wcwnina.com:8080"或"localhost:8080"回车就可以进入Django项目网站了!其中www.wcwnina.com为httpd.conf中配置的主机域名ServerName。
效果:

OK,就这么简单,大功告成!
至此。转载请注明出处。
[ 本站相关链接:>>Linux环境下部署Django ]

Django Windows环境下部署的更多相关文章
- Django Linux环境下部署CentOS7+Python3+Django+uWSGI+Nginx(含Nginx返回400问题处理、防火墙管理)
本文将介绍如何在Linux系统上部署Django web项目,本次部署基于下面的架构: CentOS7+ Python3.5 + Django1.11 + uWSGI + Nginx 亲测可行!!按照 ...
- 在Windows环境下部署Axis2/C服务
Apache Axis2/C是C语言实现的网络服务引擎,基于Axis2架构,支持SOAP1.1和SOAP1.2协议,并且支持RESTful风格的Web service. 下面是本人在Windows 7 ...
- Windows环境下部署Tomcat服务器图文教程
Tomcat是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选. 本文将详细介绍在Windows环境下 ...
- 在windows环境下部署nuxt项目(线上发布部署)
因为公司项目需要兼容SEO,同时我们也一直希望能够真正的实现前后端分离,于是毫不犹豫的选择了nuxt. 话说要重构前后端分离真是一个大工程,由于各种原因我们团队花了近两年时间都没有完成,最近才又重启把 ...
- Windows环境下部署MySQL主从并模拟升级到8.0
GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 一.部署实例 1.下载2个软件 http://ftp.kaist.ac.kr/mysql/Downloads/MySQL- ...
- Windows环境下搭建MosQuitto服务器
Windows环境下搭建MosQuitto服务器 2018年04月16日 22:00:01 wistronpj 阅读数:1185 摘自:https://blog.csdn.net/pjlxm/art ...
- Vmware ESX5i 环境下部署Windows Storage Server 2008 R2
ESX5i 环境下部署Windows Storage Server 2008 R2 Windows Storage Server 2008 这款产品微软早已发布,WSS2008是基于Win ...
- Django框架学习笔记(windows环境下安装)
博主最近开始学习主流框架django 网上大部分的安装环境都linux的 由于博主在windows环境下已经有了 Pycharm编辑器 ,所以决定还是继续在windows环境下学习 首先是下载 链接 ...
- windows环境下安装部署并启用zkui的web图形界面
在此之前的工作:不是本机部署的三个服务器最为伪集群的zookeeper环境,并将三个为服务启动起来. 然后才有了下面的工作. 1. 首先,zkui项目地址:https://github.com/Dee ...
随机推荐
- [Swift]LeetCode647. 回文子串 | Palindromic Substrings
Given a string, your task is to count how many palindromic substrings in this string. The substrings ...
- 关于video标签移动端开发遇到的问题,获取视频第一帧,全屏,自动播放,自适应等问题
最近一直在处理video标签在IOS和Android端的兼容问题,其中遇到不少坑,绝大多数问题已经解决,下面是处理问题经验的总结: 1.获取视频的第一帧作为背景图: 技术:canvas绘图 windo ...
- 别再写 bug 了,避免空指针的 5 个案例!
空指针是我们 Java 开发人员经常遇到的一个基本异常,这是一个极其普遍但似乎又无法根治的问题. 本文,栈长将带你了解什么是空指针,还有如何有效的避免空指针. 什么是空指针? 当一个变量的值为 nul ...
- 编译安装mysql5.7.24踩的坑
1.报错如下:CMake Error at cmake/boost.cmake:76 (MESSAGE): You can download it with -DDOWNLOAD_BOOST=1 - ...
- Android 修改字体,跳不过的 Typeface
序 在 Android 下使用自定义字体已经是一个比较常见的需求了,最近也做了个比较深入的研究. 那么按照惯例我又要出个一篇有关 Android 修改字体相关的文章,但是写下来发现内容还挺多的,所以我 ...
- python转义字符——重点解释:\b,\n和\r区别
放在最前面: 有时我们并不想让转义字符生效,我们只想显示字符串原来的意思,这就要用r和R来定义原始字符串.如:print r'\t\r' 实际输出为“\t\r”. 主要参考:AllenW的博客 转义字 ...
- c#进程、定时器初步学习
首先是什么原因让我做这个小项目的呢,是因为在知乎里看到的游侠的文章才尝试着自己做的,文章地址是:https://www.zhihu.com/question/48811975 开始做的时候我是照着文章 ...
- 【Python3爬虫】第一个Scrapy项目
Python版本:3.5 IDE:Pycharm 今天跟着网上的教程做了第一个Scrapy项目,遇到了很多问题,花了很多时间终于解决了== 一.Scrapy终端(scrapy shell) Sc ...
- RabbitMQ消息队列(二)-RabbitMQ消息队列架构与基本概念
没错我还是没有讲怎么安装和写一个HelloWord,不过快了,这一章我们先了解下RabbitMQ的基本概念. RabbitMQ架构 说是架构其实更像是应用场景下的架构(自己画的有点丑,勿嫌弃) 从图中 ...
- selenium和webdriver区别
接触selenium大概半年时间了.从开始的预研,简单的写个流程到后期的自动化框架的开发,因为本人不属于代码方面的大牛,一直的边研究边做.逐步深入学习.近期发现自己对本身selenium的发展还存在困 ...