python框架django项目部署相关知识详解


Posted in Python onNovember 04, 2019

这篇文章主要介绍了python框架django项目部署相关知识详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

一:项目部署的框架

nginx和uWSGI在生产服务器上进行的部署

二:什么是nginx?

nginx是一个web服务器。

什么是web服务器?

web服务器则主要是让客户可以通过浏览器进行访问,处理HTML文件,css文件,js文件,图片等资源。web服务器一般要处理静态文件。对接服务器。

什么是静态文件?

css,js,html,图片等不需要后台进行逻辑处理的文件。

特点:一般将静态文件放在web服务器里面。如nginx服务器中,做到动态静态分离的处理。

什么是动态文件?

除了静态文件之外,一般都是动态文件。

特点:动态文件一般web服务器不直接进行处理,例如ngnix会将动态资源转发给应用服务器(反向代理),让应用服务器进行处理,并将处理结果,返给nginx,nginx在将结果返回浏览器。

什么是应用服务器?

应用服务器直接面对的是我们写的程序。

特点:对接程序函数,处理业务逻辑。

uWSGI是一个应用服务器。

三:uWSGI和nginx之间通信的简单过程。

uWSGI接到请求后,将请求包进行处理,处理成wsgi(一种通信协议)可以接受的格式,并发送给wsgi,wsgi根据请求,调用应用程序中的某个文件中的某个函数,进行处理,处理完成后,将返回值,再次交给wsgi,wsgi将返回值进行打包,打包成uWSGI接受的格式,然后uWSGI将结果转发给nginx,ngnix最终将返回值给浏览器。

四:为什么分成静态服务器和应用服务器进行部署?

实现了动和静分离。提高访问静态文件的速度。降低对后台的访问。提高了网站的吞吐量。

实现动静分离的方式:

1. 页面静态化,页面静态化后的页面是放在哪里,硬盘还是缓存中。

2. 静态文件例如:图片还有html,css文件时放在web服务器上,还是web服务器的缓存里面?

五:setting.py中的debug=True

我们希望本机访问的时候,开启调试模式,错误了给错误信息的详细页面,其他机器访问的时候,关闭调试模式,错误了给他们404页面。

socket.gethostname() 返回的是主机名

python框架django项目部署相关知识详解

# setting.py中改变DEBUG=True
import socket 
if socket.gethostname() == "xxx":
  DEBUG =True
else:
  DEBUG = False

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

Python 相关文章推荐
Python如何判断数独是否合法
Sep 08 Python
Python内置函数 next的具体使用方法
Nov 24 Python
PyQT实现多窗口切换
Apr 20 Python
windows系统中Python多版本与jupyter notebook使用虚拟环境的过程
May 15 Python
python twilio模块实现发送手机短信功能
Aug 02 Python
应用OpenCV和Python进行SIFT算法的实现详解
Aug 21 Python
python使用pip安装模块出现ReadTimeoutError: HTTPSConnectionPool的解决方法
Oct 04 Python
详解Python Opencv和PIL读取图像文件的差别
Dec 27 Python
简单了解python shutil模块原理及使用方法
Apr 28 Python
MATLAB数学建模之画图汇总
Jul 16 Python
Python连接Impala实现步骤解析
Aug 04 Python
详解Go语言运用广度优先搜索走迷宫
Jun 23 Python
python tkinter控件布局项目实例
Nov 04 #Python
python requests抓取one推送文字和图片代码实例
Nov 04 #Python
python 五子棋如何获得鼠标点击坐标
Nov 04 #Python
Pandas 缺失数据处理的实现
Nov 04 #Python
python tkinter canvas使用实例
Nov 04 #Python
python matplotlib饼状图参数及用法解析
Nov 04 #Python
python制作朋友圈九宫格图片
Nov 03 #Python
You might like
php中通过curl模拟登陆discuz论坛的实现代码
2012/02/16 PHP
浅析PHP中Collection 类的设计
2013/06/21 PHP
thinkPHP学习笔记之安装配置篇
2015/03/05 PHP
PHP判断是否为空的几个函数对比
2015/04/21 PHP
简单谈谈PHP中strlen 函数
2016/02/27 PHP
ThinkPHP3.2框架自带分页功能实现方法示例
2019/05/13 PHP
javascript 年月日联动实现核心代码
2009/12/21 Javascript
使用JQUERY Tabs插件宿主IFRAMES
2010/01/01 Javascript
js加强的经典分页实例
2013/03/15 Javascript
JavaScript设计模式之抽象工厂模式介绍
2014/12/28 Javascript
基于jquery实现在线选座订座之影院篇
2015/08/24 Javascript
jquery遍历table的tr获取td的值实现方法
2016/05/19 Javascript
JS实现密码框的显示密码和隐藏密码功能示例
2016/12/26 Javascript
简单的JS控制button颜色随点击更改的实现方法
2017/04/17 Javascript
[50:28]LGD女子学院第三期 DOTA2复仇之魂教学
2013/12/24 DOTA
python getopt 参数处理小示例
2009/06/09 Python
Python3基础之基本数据类型概述
2014/08/13 Python
解决python2.7用pip安装包时出现错误的问题
2017/01/23 Python
由浅入深讲解python中的yield与generator
2017/04/05 Python
python好玩的项目—色情图片识别代码分享
2017/11/07 Python
用Python实现读写锁的示例代码
2018/11/05 Python
python 获取utc时间转化为本地时间的方法
2018/12/31 Python
python 实现查询Neo4j多节点的多层关系
2019/12/23 Python
Python 实现将numpy中的nan和inf,nan替换成对应的均值
2020/06/08 Python
Python脚本实现Zabbix多行日志监控过程解析
2020/08/26 Python
使用HTML5 Canvas绘制直线或折线等线条的方法讲解
2016/03/14 HTML / CSS
Vichy薇姿加拿大官网:法国药妆,全球专业敏感肌护肤领先品牌
2018/07/11 全球购物
Crucial英睿达法国官网:内存条及SSD固态硬盘升级
2018/07/13 全球购物
nohup的用法
2012/11/26 面试题
北大研究生linux应用求职信
2013/10/29 职场文书
会计毕业生自荐信
2013/11/21 职场文书
高二化学教学反思
2014/01/30 职场文书
会计学自荐信
2014/06/03 职场文书
水污染治理工程专业自荐信
2014/06/21 职场文书
岳麓书院导游词
2015/02/03 职场文书
MySQL入门命令之函数-单行函数-流程控制函数
2021/04/05 MySQL