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在windows下实现ping操作并接收返回信息的方法
Mar 20 Python
用Python制作检测Linux运行信息的工具的教程
Apr 01 Python
详解Python3中yield生成器的用法
Aug 20 Python
深入解析Python中的线程同步方法
Jun 14 Python
python中的迭代和可迭代对象代码示例
Dec 27 Python
Python发展史及网络爬虫
Jun 19 Python
python跳出双层for循环的解决方法
Jun 24 Python
python在新的图片窗口显示图片(图像)的方法
Jul 11 Python
flask 框架操作MySQL数据库简单示例
Feb 02 Python
三步解决python PermissionError: [WinError 5]拒绝访问的情况
Apr 22 Python
python中24小时制转换为12小时制的方法
Jun 18 Python
Python获取指定日期是"星期几"的6种方法
Mar 13 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 Mysql类 可以参考学习熟悉下
2009/06/21 PHP
简单的php中文转拼音的实现代码
2014/02/11 PHP
php关闭warning问题的解决方法
2016/05/17 PHP
thinkphp3.x中session方法的用法分析
2016/05/20 PHP
PHP session垃圾回收机制实例分析
2019/06/28 PHP
php实现session共享的实例方法
2019/09/19 PHP
PHP7修改的函数
2021/03/09 PHP
工作中常用到的JS表单验证代码(包括例子)
2010/11/11 Javascript
jQuery编程中的一些核心方法简介
2015/08/14 Javascript
不想让浏览器运行javascript脚本的方法
2015/11/20 Javascript
JS集成fckeditor及判断内容是否为空的方法
2016/05/27 Javascript
深入理解Angular2 模板语法
2016/08/07 Javascript
jQuery插件HighCharts实现的2D对数饼图效果示例【附demo源码下载】
2017/03/09 Javascript
jQuery EasyUI 为Combo,Combobox添加清除值功能的实例
2017/04/13 jQuery
js实现移动端轮播图
2020/12/21 Javascript
基于vue实现一个禅道主页拖拽效果
2019/05/27 Javascript
Python编程之属性和方法实例详解
2015/05/19 Python
python扫描proxy并获取可用代理ip的实例
2017/08/07 Python
Python远程视频监控程序的实例代码
2019/05/05 Python
python的pyecharts绘制各种图表详细(附代码)
2019/11/11 Python
利用CSS3的3D效果制作正方体
2020/03/10 HTML / CSS
美国大尺码女装零售商:TORRID
2016/10/01 全球购物
帕克纽约:PARKER NY
2018/12/09 全球购物
编程输出如下图形
2013/11/24 面试题
J2EE面试题
2016/03/14 面试题
计算机学生的自我评价分享
2014/02/18 职场文书
保护母亲河倡议书
2014/04/14 职场文书
激励员工的口号
2014/06/16 职场文书
2014年会计个人工作总结
2014/11/24 职场文书
关于童年的读书笔记
2015/06/26 职场文书
婚庆答谢词大全
2015/09/29 职场文书
nginx搭建图片服务器的过程详解(root和alias的区别)
2021/03/31 Servers
使用Selenium实现微博爬虫(预登录、展开全文、翻页)
2021/04/13 Python
新手必备Python开发环境搭建教程
2021/05/28 Python
Unity连接MySQL并读取表格数据的实现代码
2021/06/20 MySQL
SpringBoot实现异步事件驱动的方法
2021/06/28 Java/Android