cgi,fastcig,wsgi,uWSGI,uwsgi

本文详细介绍了CGI、FastCGI、WSGI以及uWSGI的概念及其在Web服务器中的作用。CGI是早期的接口标准,FastCGI是其性能优化版,而WSGI是Python的Web服务器和应用程序间的接口。uWSGI是一个高性能的服务器,支持多种协议,包括其自有的uwsgi协议。此外,还讲述了浏览器输入URL到请求返回的过程以及HTTP和HTTPS的区别,HTTP是明文传输,而HTTPS通过SSL/TLS提供加密和身份验证,确保通信安全。

一 cgi

  1. 通用网关接口(Common Gateway Interface/CGI)是一种重要的互联网技术,可以让一个客户端,从网页浏览器向执行在网络服务器上的程序请求数据。CGI描述了服务器和请求处理程序之间传输数据的一种标准。
  2. CGI程序可以用任何脚本语言或者是完全独立编程语言实现,只要这个语言可以在这个系统上运行。
  3. 用来规范web服务器传输到php解释器中的数据类型以及数据格式,包括URL、查询字符串、POST数据、HTTP header等,也就是为了保证web server传递过来的数据是标准格式的。

一句话总结: 一个标准,定义了客户端服务器之间如何传数据。

二 fastcgi

  1. 快速通用网关接口(Fast Common Gateway Interface/FastCGI)是一种让交互程序与Web服务器通信的协议。FastCGI是早期通用网关接口(CGI)的增强版本。

  2. FastCGI致力于减少网页服务器与CGI程序之间互动的开销,从而使服务器可以同时处理更多的网页请求。

  3. 常用的fastcgi软件:

    Apache HTTP Server。

    Nginx(主流):nginx是一个符合fastcgi协议的软件,处于浏览器和web程序之间,主要做请求转发和负载均衡,也可以称之为服务器中间件。

    Microsoft IIS:windows server。
    在这里插入图片描述

一句话总结: CGI的升级版

三 WSGI

  1. Web服务器网关接口(Python Web Server Gateway Interface,缩写为WSGI)是为Python语言定义的Web服务器和Web应用程序或框架之间的一种简单而通用的接口。自从WSGI被开发出来以后,许多其它语言中也出现了类似接口。
  2. wsgi server (比如uWSGI) 要和 wsgi application(比如django )交互,uwsgi需要将过来的请求转给django 处理,那么uWSGI 和 django的交互和调用就需要一个统一的规范,这个规范就是WSGI WSGI。
  3. WSGI 是作为 Web 服务器与 Web 应用程序或应用框架之间的一种低级别的接口,以提升可移植 Web 应用开发的共同点。WSGI 是基于现存的 CGI 标准而设计的。

一句话总结: 为Python定义的web服务器和web框架之间的接口标准。

四 uWSGI

wsgiref:性能很低,python实现的,django内置了,测试阶段用。

uWSGI:用c语言写的,性能比较高。

gunicorn:python写的。

它是一个Web服务器(类似的有wsgiref,gunicorn),它实现了WSGI协议、uwsgi、http等协议。用于接收前端服务器转发的动态请求并处理后发给 web 应用程序。

一句话总结: 一个Web Server,即一个实现了WSGI的服务器,大体和Apache是一个类型的东西,处理发来的请求。
在这里插入图片描述

五 uwsgi

它是uWSGI服务器实现的独有的协议,用于定义传输信息的类型,是用于前端服务器与 uwsgi 的通信规范。

uWSGI:web服务器,等同于wsgiref。
uwsgi:uWSGI自有的协议。

一句话总结: uWSGI自有的一个协议

在这里插入图片描述
在这里插入图片描述

六 浏览器输入一个地址到请求返回,经历的过程

七 http和https的区别?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值