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之dict()的操作方法
Sep 24 Python
Python可跨平台实现获取按键的方法
Mar 05 Python
Python内建模块struct实例详解
Feb 02 Python
PyTorch中的Variable变量详解
Jan 07 Python
使用Python打造一款间谍程序的流程分析
Feb 21 Python
python实现井字棋小游戏
Mar 04 Python
Django ForeignKey与数据库的FOREIGN KEY约束详解
May 20 Python
对python pandas中 inplace 参数的理解
Jun 27 Python
pandas apply多线程实现代码
Aug 17 Python
Python创建文件夹与文件的快捷方法
Dec 08 Python
python flask框架快速入门
May 14 Python
教你怎么用Python操作MySql数据库
May 31 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
跟我学Laravel之请求与输入
2014/10/15 PHP
PHP实现获取某个月份周次信息的方法
2015/08/11 PHP
PHP全功能无变形图片裁剪操作类与用法示例
2017/01/10 PHP
PHP中include()与require()的区别说明
2017/02/14 PHP
php 算法之实现相对路径的实例
2017/10/17 PHP
使用jquery实现简单的ajax
2013/07/08 Javascript
jquery自定义类似$.ajax()的方法实现代码
2013/08/13 Javascript
TypeScript具有的几个不同特质
2015/04/07 Javascript
jq实现左侧显示图片右侧文字滑动切换效果
2015/08/04 Javascript
谈谈Jquery中的children find 的区别有哪些
2015/10/19 Javascript
适用于javascript开发者的Processing.js入门教程
2016/02/24 Javascript
jQuery使用模式窗口实现在主页面和子页面中互相传值的方法
2016/03/01 Javascript
判断JS对象是否拥有某属性的方法推荐
2016/05/12 Javascript
jquery动态遍历Json对象的属性和值的方法
2016/07/27 Javascript
AngularJS基础 ng-href 指令用法
2016/08/01 Javascript
jQuery实现花式轮播之圣诞节礼物传送效果
2016/12/25 Javascript
vue-resourse将json数据输出实例
2017/03/08 Javascript
js实现添加删除表格(两种方法)
2017/04/27 Javascript
十分钟教你上手ES2020新特性
2020/02/12 Javascript
Js逆向实现滑动验证码图片还原的示例代码
2020/03/10 Javascript
python实现的生成随机迷宫算法核心代码分享(含游戏完整代码)
2014/07/11 Python
Python用imghdr模块识别图片格式实例解析
2018/01/11 Python
详解Python3中ceil()函数用法
2019/02/19 Python
python SVM 线性分类模型的实现
2019/07/19 Python
Python3自定义json逐层解析器代码
2020/05/11 Python
keras model.fit 解决validation_spilt=num 的问题
2020/06/19 Python
如何快速一次性卸载所有python包(第三方库)呢
2020/10/20 Python
HTML页面中添加Canvas标签示例
2015/01/01 HTML / CSS
英国高端食品和葡萄酒超市:Waitrose
2016/08/23 全球购物
Haggar官网:美国男装品牌
2020/02/16 全球购物
药学专业大学生个人的自我评价
2013/11/04 职场文书
法律六进活动方案
2014/03/13 职场文书
门前三包责任书
2014/04/15 职场文书
商业项目策划方案
2014/06/05 职场文书
汽车维修求职信
2014/06/15 职场文书
MySQL创建管理KEY分区
2022/04/13 MySQL