python框架django项目部署相关知识详解
这篇文章主要介绍了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() 返回的是主机名

# setting.py中改变DEBUG=True import socket if socket.gethostname() == "xxx": DEBUG =True else: DEBUG = False
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
Python为Excel单元格设置填充\背景色的操作方法(纯色、渐变、图案)
在使用Excel进行数据处理和分析时,对特定单元格进行背景颜色填充不仅能够提升工作表的视觉吸引力,还能帮助用户快速识别和区分不同类别的数据,本文将通过三个示例详细介绍如何使用Python在Excel中设置不同的单元格背景,需要的朋友可以参考下2024-08-08
Win10 GPU运算环境搭建(CUDA10.0+Cudnn 7.6.5+pytroch1.2+tensorflow1.
熟悉深度学习的人都知道,深度学习是需要训练的,本文主要介绍了Win10 GPU运算环境搭建,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2021-09-09
python框架Django实战商城项目之工程搭建过程图文详解
这篇文章主要介绍了python框架Django实战商城项目之工程搭建过程,这个项目很像京东商城,项目开发采用前后端不分离的模式,本文通过图文并茂的形式给大家介绍的非常详细,需要的朋友可以参考下2020-03-03
带你彻底搞懂python操作mysql数据库(cursor游标讲解)
这篇文章主要介绍了带你彻底搞懂python操作mysql数据库(cursor游标讲解),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-01-01
详解pandas.DataFrame中删除包涵特定字符串所在的行
这篇文章主要介绍了pandas.DataFrame中删除包涵特定字符串所在的行,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-04-04


最新评论