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小技巧分享
Nov 22 Python
详解Python中break语句的用法
May 14 Python
python清除字符串里非字母字符的方法
Jul 02 Python
简析Python的闭包和装饰器
Feb 26 Python
浅谈python字符串方法的简单使用
Jul 18 Python
Python数据结构之双向链表的定义与使用方法示例
Jan 16 Python
对Python中list的倒序索引和切片实例讲解
Nov 15 Python
对python3标准库httpclient的使用详解
Dec 18 Python
详解Python可视化神器Yellowbrick使用
Nov 11 Python
手把手教你如何用Pycharm2020.1.1配置远程连接的详细步骤
Aug 07 Python
新手必备Python开发环境搭建教程
May 28 Python
Pygame Draw绘图函数的具体使用
Nov 17 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字符串截取问题
2006/11/28 PHP
教你如何用php实现LOL数据远程获取
2014/06/10 PHP
9个经典的PHP代码片段分享
2014/12/18 PHP
php读取flash文件高宽帧数背景颜色的方法
2015/01/06 PHP
jQueryUI的Dialog的简单封装
2010/06/07 Javascript
jquery.autocomplete修改实现键盘上下键自动填充示例
2013/11/19 Javascript
javascript数组去重方法汇总
2015/04/23 Javascript
三种AngularJS中获取数据源的方式
2016/02/02 Javascript
AngularJS向后端ASP.NET API控制器上传文件
2016/02/03 Javascript
javascript数字验证的实例代码(推荐)
2016/08/20 Javascript
JavaScript生成验证码并实现验证功能
2016/09/24 Javascript
BootStrap Table 获取同行不同列元素的方法
2016/12/19 Javascript
jQuery获取复选框选中的当前行的某个字段的值
2017/09/15 jQuery
从零开始搭建一个react项目开发
2018/02/09 Javascript
使用Three.js实现太阳系八大行星的自转公转示例代码
2019/04/09 Javascript
vue模式history下在iis中配置流程
2019/04/17 Javascript
JS PHP字符串截取函数实现原理解析
2020/08/29 Javascript
聊聊vue 中的v-on参数问题
2021/01/29 Vue.js
一起来了解一下JavaScript的预编译(小结)
2021/03/01 Javascript
按日期打印Python的Tornado框架中的日志的方法
2015/05/02 Python
python实现根据主机名字获得所有ip地址的方法
2015/06/28 Python
Python+matplotlib+numpy实现在不同平面的二维条形图
2018/01/02 Python
python中使用 xlwt 操作excel的常见方法与问题
2019/01/13 Python
Python读取csv文件分隔符设置方法
2019/01/14 Python
Python opencv实现人眼/人脸识别以及实时打码处理
2019/04/29 Python
Django Session和Cookie分别实现记住用户登录状态操作
2020/07/02 Python
python使用requests库爬取拉勾网招聘信息的实现
2020/11/20 Python
Python编写万花尺图案实例
2021/01/03 Python
美国休闲服装品牌:J.Crew Factory
2017/03/04 全球购物
中国旅游网站:途牛旅游网
2019/09/29 全球购物
优秀毕业生找工作自荐信
2014/06/23 职场文书
小学生五年级大队长竞选发言稿
2014/09/12 职场文书
病人家属写给医院的感谢信
2015/01/23 职场文书
2016年综治和平安建设宣传月活动总结
2016/04/01 职场文书
基于Redis延迟队列的实现代码
2021/05/13 Redis
聊聊Python中关于a=[[]]*3的反思
2021/06/02 Python