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列表(list)、字典(dict)、字符串(string)基本操作小结
Nov 28 Python
Python之py2exe打包工具详解
Jun 14 Python
Python及PyCharm下载与安装教程
Nov 18 Python
Python cookbook(数据结构与算法)实现对不原生支持比较操作的对象排序算法示例
Mar 15 Python
python3下实现搜狗AI API的代码示例
Apr 10 Python
python实现时间o(1)的最小栈的实例代码
Jul 23 Python
Python使用sort和class实现的多级排序功能示例
Aug 15 Python
Python中使用logging和traceback模块记录日志和跟踪异常
Apr 09 Python
pyinstaller打包opencv和numpy程序运行错误解决
Aug 16 Python
关于Python 中的时间处理包datetime和arrow的方法详解
Mar 19 Python
python中format函数如何使用
Jun 22 Python
python源码剖析之PyObject详解
May 18 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
改造一台复古桌面收音机
2021/03/02 无线电
PHP新手上路(九)
2006/10/09 PHP
PHP 一个页面执行时间类代码
2010/03/05 PHP
php中通过curl模拟登陆discuz论坛的实现代码
2012/02/16 PHP
PHP垃圾回收机制引用计数器概念分析
2013/06/24 PHP
Laravel 5 框架入门(二)构建 Pages 的管理功能
2015/04/09 PHP
ThinkPHP实现的rsa非对称加密类示例
2018/05/29 PHP
thinkphp3.2同时连接两个数据库的简单方法
2019/08/13 PHP
PHP基于openssl实现非对称加密代码实例
2020/06/19 PHP
jQuery textarea的长度进行验证
2009/05/06 Javascript
JavaScript 加号(+)运算符号
2009/12/06 Javascript
自动刷新网页,自动刷新当前页面,JS调用
2013/06/24 Javascript
原生js仿jq判断当前浏览器是否为ie,精确到ie6~8
2014/08/30 Javascript
深入解析JavaScript中函数的Currying柯里化
2016/03/19 Javascript
微信小程序 教程之wxapp视图容器 scroll-view
2016/10/19 Javascript
jQuery展示表格点击变色、全选、删除
2017/01/05 Javascript
Angular使用过滤器uppercase/lowercase实现字母大小写转换功能示例
2018/03/27 Javascript
nodejs用gulp管理前端文件方法
2018/06/24 NodeJs
详解微信小程序开发(项目从零开始)
2019/06/06 Javascript
浅谈vue限制文本框输入数字的正确姿势
2019/09/02 Javascript
javascript canvas时钟模拟器
2020/07/13 Javascript
Vue记住滚动条和实现下拉加载的完美方法
2020/07/31 Javascript
[01:48]DOTA2 2015国际邀请赛中国区预选赛第二日战报
2015/05/27 DOTA
python去除空格和换行符的实现方法(推荐)
2017/01/04 Python
浅谈Series和DataFrame中的sort_index方法
2018/06/07 Python
在python中安装basemap的教程
2018/09/20 Python
Python正则表达式匹配数字和小数的方法
2019/07/03 Python
pycharm 2020 1.1的安装流程
2020/09/29 Python
详解Python中openpyxl模块基本用法
2021/02/23 Python
创先争优活动心得体会
2014/09/04 职场文书
纪检监察立案决定书
2015/06/24 职场文书
2019脱贫攻坚工作总结报告范本!
2019/08/06 职场文书
怎样做好公众演讲能力?
2019/08/28 职场文书
解决Golang中goroutine执行速度的问题
2021/05/02 Golang
vue组件冲突之引用另一个组件出现组件不显示的问题
2022/04/13 Vue.js
Python循环之while无限迭代
2022/04/30 Python