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 相关文章推荐
PHP魔术方法__ISSET、__UNSET使用实例
Nov 25 Python
python让图片按照exif信息里的创建时间进行排序的方法
Mar 16 Python
Python设计实现的计算器功能完整实例
Aug 18 Python
Python 比较文本相似性的方法(difflib,Levenshtein)
Oct 15 Python
使用python实现男神女神颜值打分系统(推荐)
Oct 31 Python
Python3将jpg转为pdf文件的方法示例
Dec 13 Python
Python selenium爬虫实现定时任务过程解析
Jun 08 Python
通过自学python能找到工作吗
Jun 21 Python
Python实现打包成库供别的模块调用
Jul 13 Python
Python使用sys.exc_info()方法获取异常信息
Jul 23 Python
python基础之匿名函数详解
Apr 21 Python
pandas DataFrame.shift()函数的具体使用
May 24 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导入Excel到MySQL的方法
2011/04/23 PHP
PHP实现的购物车类实例
2015/06/17 PHP
6个超实用的PHP代码片段
2015/08/10 PHP
Laravel 集成微信用户登录和绑定的实现
2019/12/27 PHP
网页前台通过js非法字符过滤代码(骂人的话等等)
2010/05/26 Javascript
js操作table示例(个人心得)
2013/11/29 Javascript
JavaScript运算符小结
2015/06/03 Javascript
Node.js的文件权限及读写flag详解
2016/10/11 Javascript
WEB前端实现裁剪上传图片功能
2016/10/17 Javascript
JS中闭包的经典用法小结(2则示例)
2016/12/28 Javascript
js处理层级数据结构的方法小结
2017/01/17 Javascript
实例详解display:none与visible:hidden的区别
2017/03/30 Javascript
Node.js自定义实现文件路由功能
2017/09/22 Javascript
JavaScript实现异步图像上传功能
2018/07/12 Javascript
JavaScript Window窗口对象属性和使用方法
2020/01/19 Javascript
vue 动态给每个页面添加title、关键词和描述的方法
2020/08/28 Javascript
解决nuxt页面中mounted、created、watch执行两遍的问题
2020/11/05 Javascript
Python字符串处理之count()方法的使用
2015/05/18 Python
web.py在SAE中的Session问题解决方法(使用mysql存储)
2015/06/24 Python
python 字典(dict)按键和值排序
2016/06/28 Python
PythonWeb项目Django部署在Ubuntu18.04腾讯云主机上
2019/04/01 Python
python 使用turtule绘制递归图形(螺旋、二叉树、谢尔宾斯基三角形)
2019/05/30 Python
详解Python3之数据指纹MD5校验与对比
2019/06/11 Python
Python 3.8正式发布重要新功能一览
2019/10/17 Python
python验证码图片处理(二值化)
2019/11/01 Python
浅谈Python访问MySQL的正确姿势
2020/01/07 Python
在python3中实现更新界面
2020/02/21 Python
python3实现将json对象存入Redis以及数据的导入导出
2020/07/16 Python
德国前卫设计师时装在线商店:Luxury Loft
2019/11/04 全球购物
怎样比较两个类型为String的字符串
2016/08/17 面试题
党的群众路线教育实践活动个人对照检查材料(校长)
2014/11/05 职场文书
出国签证在职证明范本
2014/11/24 职场文书
2014年后勤工作总结范文
2014/12/16 职场文书
让子弹飞观后感
2015/06/11 职场文书
宣传稿格式范文
2015/07/23 职场文书
python中的被动信息搜集
2021/04/29 Python