大家好,因为个人水平有限,肯定会有不准确的地方,希望多多指教!
q1:http1.1提供的四种认证方式?
BASIC 认证(基本认证)
BASIC 认证虽然采用 Base64 编码方式,但这不是加密处理。常见于路由器的登录认证。
DIGEST 认证(摘要认证)
DIGEST 认证提供了高于 BASIC 认证的安全等级,但是和 HTTPS 的 客户端认证相比仍旧很弱。DIGEST 认证提供防止密码被窃听的保护 机制,但并不存在防止用户伪装的保护机制。
SSL 客户端认证
SSL客户端认证是借由 HTTPS 的客户端证书完成认证的方式。凭借客户端证书认证,服务器可确认访问是否来自已登录的客户端。
在多数情况下,SSL客户端认证不会仅依靠证书完成认证,一般会和基于表单认证组合形成一种双因素认证来使用。换言之,第一个认证因素的 SSL客户端证书用来认证客户端计算机, 另一个认证因素的密码则用来确定这是用户本人的行为。
FormBase 认证(基于表单认证)
多数情况下,输入已事先登录的用户ID(通常是任意字符串或邮件地址)和密码等登录信息后,发送给 Web 应用程序,基于认证结果来决定认证是否成功。
基于表单认证的标准规范尚未有定论,一般会使用 Cookie 来管理 Session(会话)。
q2:spdy协议,websocket协议,webdav协议介绍?
消除 HTTP 瓶颈的 SPDY
特点:
- 多路复用流:通过单一的 TCP 连接,可以无限制处理多个 HTTP 请求。
- 赋予请求优先级:给请求逐个分配优先 级顺序。
- 压缩 HTTP 首部:压缩 HTTP 请求和响应的首部。
- 推送功能:支持服务器主动向客户端推送数据的功能。
全双工通信的 WebSocket
特点:
- 推送功能:支持由服务器向客户端推送数据的推送功能。这样,服务器可直接发 送数据,而不必等待客户端的请求。
- 减少通信量:只要建立起 WebSocket 连接,就希望一直保持连接状态。和 HTTP 相 比,不但每次连接时的总开销减少,而且由于 WebSocket 的首部信息很小,通信量也相应减少了。
Web 服务器管理文件的 WebDAV
WebDAV(Web-based Distributed Authoring and Versioning,基于万维网 的分布式创作和版本控制)是一个可对 Web 服务器上的内容直接进行文件复制、编辑等操作的分布式文件系统。
q3:http2.0介绍?
HTTP/2.0 的 7 项技术及讨论
HTTP Speed + Mobility 由微软公司起草,是用于改善并提高移动端通信时的通信速度和性能的标准。它建立在 Google 公司提出的 SPDY 与 WebSocket 的基础之上。
Network-Friendly HTTP Upgrade 主要是在移动端通信时改善 HTTP 性能的标准。
q4:cgi与servlet的介绍?
CGI(Common Gateway Interface,通用网关接口)
是指 Web 服务器在 接收到客户端发送过来的请求后转发给程序的一组机制。在 CGI 的 作用下,程序会对请求内容做出相应的动作,比如创建 HTML等动态内容。 使用 CGI 的程序叫做 CGI 程序,通常是用 Perl、PHP、Ruby 和 C 等 编程语言编写而成。
因 Java 而普及的 Servlet
Servlet 是一种能在服务器上创建动态内容的程序。Servlet 是用 Java 语言实现的一个接口,属于面向企业级 Java(JavaEE,Java Enterprise Edition)的一部分。之前提及的 CGI,由于每次接到请求,程序都要跟着启动一次。因此一旦访问量过大,Web 服务器要承担相当大的负载。而 Servlet 运行 在与 Web 服务器相同的进程中,因此受到的负载较小 。Servlet 的运行环境叫做 Web 容器或 Servlet 容器。