[入门首选] centos+Nginx+uWSGI+Django项目部署详解

本文详细讲解了如何在CentOS系统上使用Nginx、uWSGI和Django进行项目部署,包括Web的发展历程、三者之间的关系、所需依赖的安装及简单Django项目的远程部署步骤,帮助读者掌握全栈部署技巧。
摘要由CSDN通过智能技术生成
软件 版本
Nginx 1.16.1
uWSGI 2.0.18
Django 2.2.4
centos 7.6
python 3.7.2

Nginx, uWSGI, Django三者的关系

Web的简单发展史

  • 最早期的时候, Web Server返回的都只是一些静态的Html页面. 用户通过浏览器向服务器发送请求, 服务器接收到请求后在指定的文件夹下找到相应的文件然后返还给浏览器.
    在这里插入图片描述

  • 后来, 静态页面已经满足不了人们的需求, 人们想和Web Server进行一些动态交互, 比如用户名密码的登录, 比如想知道某个网站的访问量是多少等等, 这些都不再是程序员事先写几个静态页面存储在Web Server中就可以实现的.
    由于动态交互涉及一定的业务逻辑, 于是就产生了处理这些业务逻辑的代码程序. Web Server接收到Browser的请求后, Web Server会把这个请求转发到一个处理这个请求的程序, 程序处理完后把结果返还给Web Server, 再由Web Server返还给Browser.
    比如一个登录功能, Browser将账号密码发送给Web Server后, Web Server将账号密码转发给一个处理程序, 这个处理程序会验证这个账号密码是否匹配, 然后把结果发送给服务器.
    在这里插入图片描述
    CGI (Common Gateway Interface) 通用网关接口, 就是最初专门用来为server生成动态页面的脚本程序

  • 随着时代的进步, CGI的局限性渐渐体现了出来, 伸缩性不太好, 不安全, 没有提供一种结构化的方法去构造一个动态应用程序(向深入了解CGI缺点的同学可以自行查阅资料). 新旧更迭, Web应用时代终于在2005年左右到来. 许许多多的Web应用框架应运而生, Django就是其中之一. 根据这些框架可以很容易的构造出一个又一个web应用.
    Web Server将接收到的请求都转发给Web应用, 由Web应用程序处理后再将结果返还.
    而Web Server想要和Web应用之间进行通信, 就需要大家都遵守一个规范协议, 这就是WSGI (Web Server Gateway Interface) (WSGI是为python语言定义的, 也就是说Web应用的编写语言为python). 通俗地讲就好像一个韩国人和一个日本人要相互沟通, 就需要学一门共同的语言汉语, WSGI就是充当汉语的角色.
    在这里插入图片描述

uWSGI, WSGI, uwsgi的区分

  • uWSGI: 一种服务器(和Nginx同类别),实现了WSGI协议、uwsgi协议、http协议等。它要

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值