环境准备

本文将介绍如何在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环境下部署的更多相关文章

  1. Django Linux环境下部署CentOS7+Python3+Django+uWSGI+Nginx(含Nginx返回400问题处理、防火墙管理)

    本文将介绍如何在Linux系统上部署Django web项目,本次部署基于下面的架构: CentOS7+ Python3.5 + Django1.11 + uWSGI + Nginx 亲测可行!!按照 ...

  2. 在Windows环境下部署Axis2/C服务

    Apache Axis2/C是C语言实现的网络服务引擎,基于Axis2架构,支持SOAP1.1和SOAP1.2协议,并且支持RESTful风格的Web service. 下面是本人在Windows 7 ...

  3. Windows环境下部署Tomcat服务器图文教程

    Tomcat是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选. 本文将详细介绍在Windows环境下 ...

  4. 在windows环境下部署nuxt项目(线上发布部署)

    因为公司项目需要兼容SEO,同时我们也一直希望能够真正的实现前后端分离,于是毫不犹豫的选择了nuxt. 话说要重构前后端分离真是一个大工程,由于各种原因我们团队花了近两年时间都没有完成,最近才又重启把 ...

  5. Windows环境下部署MySQL主从并模拟升级到8.0

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 一.部署实例 1.下载2个软件 http://ftp.kaist.ac.kr/mysql/Downloads/MySQL- ...

  6. Windows环境下搭建MosQuitto服务器

    Windows环境下搭建MosQuitto服务器 2018年04月16日 22:00:01 wistronpj 阅读数:1185  摘自:https://blog.csdn.net/pjlxm/art ...

  7. Vmware ESX5i 环境下部署Windows Storage Server 2008 R2

    ESX5i 环境下部署Windows Storage Server 2008 R2       Windows Storage Server 2008 这款产品微软早已发布,WSS2008是基于Win ...

  8. Django框架学习笔记(windows环境下安装)

    博主最近开始学习主流框架django 网上大部分的安装环境都linux的 由于博主在windows环境下已经有了 Pycharm编辑器 ,所以决定还是继续在windows环境下学习 首先是下载 链接 ...

  9. windows环境下安装部署并启用zkui的web图形界面

    在此之前的工作:不是本机部署的三个服务器最为伪集群的zookeeper环境,并将三个为服务启动起来. 然后才有了下面的工作. 1. 首先,zkui项目地址:https://github.com/Dee ...

随机推荐

  1. 参数验证 @Validated 和 @Valid 的区别

    来源:blog.csdn.net/qq_27680317/article/details/79970590 整编:Java技术栈(公众号ID:javastack) Spring Validation验 ...

  2. 分布式事务之如何基于RocketMQ的事务消息特性实现分布式系统的最终一致性?

    导读 在之前的文章中我们介绍了如何基于RocketMQ搭建生产级消息集群,以及2PC.3PC和TCC等与分布式事务相关的基本概念(没有读过的读者详见

  3. http初探

    http超文本传输协议 一.版本差异: 版本分0.9   1.0   1.1    2.0 http0.9/1.0已经过时:目前主要是1.1版本的,2.0版本的还没普及. http1.1 ----在同 ...

  4. Linux 文件夹压缩命令总结

    tar命令 解包:tar zxvf FileName.tar 打包:tar czvf FileName.tar DirName gz命令 解压1:gunzip FileName.gz 解压2:gzip ...

  5. How does the vuejs add the query and walk the object?

    让这个老实返回的页面添加特殊路由,这个页面常常都是登录注册.这次我们根据登录举例. 省略 { path:'/login?url=:url', name:'loginfirst', component: ...

  6. 说一说MVC的CSRF(三)

    用途:防止CSRF(跨网站请求伪造). 用法:在View->Form表单中:<%:Html.AntiForgeryToken()%> 在Controller->Action动作 ...

  7. 并发编程(七)——AbstractQueuedSynchronizer 之 CountDownLatch、CyclicBarrier、Semaphore 源码分析

    这篇,我们的关注点是 AQS 最后的部分,共享模式的使用.本文先用 CountDownLatch 将共享模式说清楚,然后顺着把其他 AQS 相关的类 CyclicBarrier.Semaphore 的 ...

  8. Python接口自动化

    1.unittest单元测试框架&接口介绍 2.接口测试框架设计 3.接口的安全机制 4.Mock服务介绍&实现原理 5.Jenkins使用和配置 6 .发送邮箱设置

  9. [转]Nodejs进程间通信

    本文转自:http://www.cnblogs.com/rubyxie/articles/8949417.html 一.场景 Node运行在单线程下,但这并不意味着无法利用多核/多机下多进程的优势 事 ...

  10. [转]快速新建简单的koa2后端服务

    本文转自:https://blog.csdn.net/saucxs/article/details/83788259 既然前端工程化是基于NodeJS,那么选择NodeJs做前后端分离部署也是理所应当 ...