Apache部署Django项目图文详解


Posted in Python onJuly 30, 2019

前言

Django项目本身就可以启动运行,为什么还需要部署到Apache或者Nginx上呢?初学者都会遇到这个问题,我们来看看官方解释:It's intended only for use while developing. (We're in the business of making Web frameworks, not Web servers.),意思是django的业务是制作Web框架,而不是Web服务器。自带的web server只是方便开发,并不能直接放到生产环境,有兴趣的同学可以自己测试两者性能上的差距。 言归正传,我们这里主要讲述如何搭建Apache环境。

安装Apache

Apache(win 64)下载:https://www.apachehaus.com/cgi-bin/download.plx#APACHE24VC09

1.解压缩,修改Apache24\conf\httpd.conf 文件中的apache路径和端口:

......
Define SRVROOT "E:/Apache24"  
ServerRoot "${SRVROOT}"
......

#Listen 12.34.56.78:80
Listen 8088
......

ServerName localhost:8088
......

2.打开E:\Apache24\bin\httpd.exe,在浏览器输入http://127.0.0.1:8088/ 出现welcome页面代表成功。

Apache部署Django项目图文详解

mod_wsgi 模块下载:http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi

1.把whl文件改成zip,解压缩,把里面的mod_wsgi.so拷贝到E:\Apache24\modules路径下,httpd.conf 中新增一段配置:

#添加mod_wsgi.so 模块 
LoadModule wsgi_module modules/mod_wsgi.so

若mod_wsgi解压后找不到mod_wsgi.so文件(如有跳过此步骤)

运行cmd,进入Scripts目录执行安装操作:

pip3 install mod_wsgi-4.5.17+ap24vc10-cp34-cp34m-win_amd64.whl

在Scripts目录执行:mod_wsgi-express module-config

Apache部署Django项目图文详解

把三行内容复制到httpd.conf:

#添加mod_wsgi.so 模块 
LoadFile "c:/python34/DLLs/python3.dll"
LoadModule wsgi_module "c:/python34/lib/site-packages/mod_wsgi/server/mod_wsgi.pyd"
WSGIPythonHome "c:/python34"

配置Apache与Django

1.打开Apache配置文件 httpd.conf,在末尾增加一段配置:

#添加mod_wsgi.so 模块 
LoadFile "c:/python34/DLLs/python3.dll"
LoadModule wsgi_module "c:/python34/lib/site-packages/mod_wsgi/server/mod_wsgi.pyd"
WSGIPythonHome "c:/python34"
 
#指定myweb项目的wsgi.py配置文件路径 
WSGIScriptAlias / D:/mysite/mysite/wsgi.py 
 
#指定项目路径 
WSGIPythonPath D:/mysite 
 
<Directory D:/mysite/mysite> 
<Files wsgi.py> 
  Require all granted 
</Files> 
</Directory> 
 
Alias /static D:/mysite/static  
<Directory D:/mysite/static>  
  AllowOverride None 
  Options None 
  Require all granted 
</Directory>

2.打开django项目setting配置:

DEBUG = False
ALLOWED_HOSTS = ['127.0.0.1','localhost'] #允许访问的ip。也可以用'*'表示,代表不受限制

重启bin\httpd.exe,输入URL

Apache部署Django项目图文详解

测试OK

3.将Apache安装成windows server,就不需要每次打开httpd.exe出现一个小黑框了。

bin目录下运行cmd命令httpd -k install -n “服务名” (不加参数,默认Apache2.4)

Apache部署Django项目图文详解

运行apache:net start apache2.4

停止apache:net stop apache2.4

删除apache:sc delete Apache2.4

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中的异常处理学习笔记
Jan 28 Python
Python的类实例属性访问规则探讨
Jan 30 Python
python二分查找算法的递归实现方法
May 12 Python
Django使用HttpResponse返回图片并显示的方法
May 22 Python
python爱心表白 每天都是浪漫七夕!
Aug 18 Python
Django组件cookie与session的具体使用
Jun 05 Python
python射线法判断检测点是否位于区域外接矩形内
Jun 28 Python
Python math库 ln(x)运算的实现及原理
Jul 17 Python
python 消除 futureWarning问题的解决
Dec 25 Python
python3连接MySQL8.0的两种方式
Feb 17 Python
python3 配置logging日志类的操作
Apr 08 Python
一篇文章带你了解Python和Java的正则表达式对比
Sep 15 Python
Python 使用list和tuple+条件判断详解
Jul 30 #Python
用python wxpy管理微信公众号并利用微信获取自己的开源数据
Jul 30 #Python
Python实现二叉搜索树BST的方法示例
Jul 30 #Python
django 基于中间件实现限制ip频繁访问过程详解
Jul 30 #Python
python3安装crypto出错及解决方法
Jul 30 #Python
Django框架组成结构、基本概念与文件功能分析
Jul 30 #Python
Python实现性能自动化测试竟然如此简单
Jul 30 #Python
You might like
PHP iconv 函数转gb2312的bug解决方法
2009/10/11 PHP
php获得用户ip地址的比较不错的方法
2014/02/08 PHP
PHP session会话操作技巧小结
2016/09/27 PHP
javascrip客户端验证文件大小及文件类型并重置上传
2011/01/12 Javascript
js动态加载以及确定加载完成的代码
2011/07/31 Javascript
js使浏览器窗口最大化实现代码(适用于IE)
2013/08/07 Javascript
jQuery中:nth-child选择器用法实例
2014/12/31 Javascript
jQuery.prop() 使用详解
2015/07/19 Javascript
javascript求日期差的方法
2016/03/02 Javascript
JavaScript禁止复制与粘贴的实现代码
2016/05/16 Javascript
laypage分页控件使用实例详解
2016/05/19 Javascript
AngularJS实践之使用ng-repeat中$index的注意点
2016/12/22 Javascript
微信小程序 slider 详解及实例代码
2017/01/10 Javascript
NodeJs使用Mysql模块实现事务处理实例
2017/05/31 NodeJs
JS中数组与对象的遍历方法实例小结
2018/08/14 Javascript
webpack 静态资源集中输出的方法示例
2018/11/09 Javascript
[03:17]DOTA2-DPC中国联赛1月29日Recap集锦
2021/03/11 DOTA
Python实现Const详解
2015/01/27 Python
pandas数据处理基础之筛选指定行或者指定列的数据
2018/05/03 Python
python 遍历目录(包括子目录)下所有文件的实例
2018/07/11 Python
对Python生成汉字字库文字,以及转换为文字图片的实例详解
2019/01/29 Python
对Pytorch神经网络初始化kaiming分布详解
2019/08/18 Python
python之生成多层json结构的实现
2020/02/27 Python
Pytest测试框架基本使用方法详解
2020/11/25 Python
ghd法国官方网站:英国最受欢迎的美发工具品牌
2019/04/18 全球购物
小学生操行评语
2014/04/22 职场文书
音乐幼师求职信
2014/07/09 职场文书
购房公证委托书(2014版)
2014/09/12 职场文书
评先进个人材料
2014/12/29 职场文书
怎样写离婚协议书
2015/01/26 职场文书
大学生违纪检讨书范文
2015/05/07 职场文书
商业计划书格式、范文
2019/03/21 职场文书
工作汇报材料难写?方法都在这里了!
2019/07/01 职场文书
职工的安全责任书范文!
2019/07/02 职场文书
浙江省杭州市平均工资标准是多少?
2019/07/09 职场文书
Python+Selenium实现读取网易邮箱验证码
2022/03/13 Python