热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

httpS和http/2有什么区别?

如何解决《httpS和http/2有什么区别?》经验,为你挑选了1个好方法。

我试图了解https和http / 2之间的区别是什么?

如果我要构建node.js / express应用,我应该使用什么?

我可以将https与http / 2一起使用吗?

也许如果我使用https,则不需要http / 2,因为它是相同的,或者https在后台使用http / 2?

我糊涂了。

有人链接到我“ HTTP 1.1和HTTP 2.0之间的差异[关闭]”,但我了解HTTP和HTTP2之间的差异。我在问HTTP S和HTTP / 2



1> Barry Pollar..:

HTTP-客户端(例如Web浏览器)用来从服务器(例如Web服务器)请求资源的协议。

HTTPS-一种加密HTTP的方式。它基本上使用SSL / TLS将HTTP消息包装为加密格式。当网站通过未加密的HTTP提供服务时,Web越来越趋向于HTTPS,并且Web浏览器开始发出越来越多的警告。除非您有很好的理由不这样做,否则请在您现在创建的任何网站上使用HTTPS。

深入研究HTTP,我们有:

HTTP / 1.1-这是HTTP的流行格式,直到最近。这是一个基于文本的协议,并且效率低下-尤其是在请求大量资源(例如典型的网页)时。HTTP / 1.1消息可以不加密(网站地址以http://开头),也可以使用HTTPS加密(网站地址以https://开头)。客户端使用URL的开头来决定要使用的协议,如果未提供,通常默认为http://。

HTTP / 2 -2015年发布的HTTP的新版本,通过从基于文本的协议转移到明确定义每个字节的二进制协议,解决了一些性能问题。对于客户端和服务器而言,这更容易解析,为错误留出了更少的空间,还允许多路复用。HTTP / 2与HTTP / 1.1一样,可通过未加密(http://)和加密(https://)通道使用,但是Web浏览器仅通过HTTPS支持它,在HTTPS上决定使用HTTP / 1.1还是HTTP / 2在连接开始时作为HTTPS协商的一部分。

在撰写本文时,约有三分之一的网站使用HTTP / 2。但是,并非所有客户端都支持HTTP / 2,因此您应该尽可能支持HTTPS上的HTTP / 1.1和HTTPS上的HTTP / 2(我相信节点在使用http模块时会自动为您执行此操作)。我认为HTTP / 1.1不会在不久的将来淘汰。您还应该考虑通过未加密的HTTP支持HTTP / 1.1,然后重定向到HTTPS版本(然后将视情况使用HTTP / 1.1或HTTP / 2)。Node前面的Web服务器(如Apache或Nginx)使此操作变得容易。

HTTP / 3 - HTTP的下一版本,目前正在开发中。它可能会在2019年完成,但可能要到2020年才能在Web服务器和节点等语言中看到。它将建立在称为QUIC的基于UDP的传输之上(而不是HTTP / 1.1和HTTP / 2所基于的基于TCP的协议)。它将在协议中包括HTTPS的一部分,因此HTTP / 3仅可通过HTTPS使用。

简而言之,您应该在HTTPS上使用HTTP / 1.1,如果易于实现的话,也应该考虑HTTP / 2(并非总是可能,因为它尚不普遍,但是到那里为止),将来您可能会使用HTTP / 3。

如果您要进行Web开发,我建议您对所有这些技术有一个深刻的了解(也许还没有HTTP / 3)。它会很好地支持您。


推荐阅读
  • 如何解决《哪些Web服务器支持HTTP/2》经验,为你挑选了2个好方法。 ... [详细]
  • HTTP2isreleasedandsupportedbyallmajorbrowsers.Thereareimplementationsshippinginmajor ... [详细]
  • 用阿里云的免费 SSL 证书让网站从 HTTP 换成 HTTPS
    HTTP协议是不加密传输数据的,也就是用户跟你的网站之间传递数据有可能在途中被截获,破解传递的真实内容,所以使用不加密的HTTP的网站是不 ... [详细]
  • 为了确保iOS应用能够安全地访问网站数据,本文介绍了如何在Nginx服务器上轻松配置CertBot以实现SSL证书的自动化管理。通过这一过程,可以确保应用始终使用HTTPS协议,从而提升数据传输的安全性和可靠性。文章详细阐述了配置步骤和常见问题的解决方法,帮助读者快速上手并成功部署SSL证书。 ... [详细]
  • FastDFS Nginx 扩展模块的源代码解析与技术剖析
    FastDFS Nginx 扩展模块的源代码解析与技术剖析 ... [详细]
  • HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写,它用于传送www方式的数据。HTTP协议采用了请求响应模型。客服端向服务器发送一 ... [详细]
  • 在将Web服务器和MySQL服务器分离的情况下,是否需要在Web服务器上安装MySQL?如果安装了MySQL,如何解决PHP连接MySQL服务器时出现的连接失败问题? ... [详细]
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • 大家好,我是李白。本文将分享一个从零开始的全栈项目,涵盖了设计、前端、后端和服务端的全面学习过程。通过这个项目,我希望能够帮助初学者更好地理解和掌握全栈开发的技术栈。 ... [详细]
  • Nginx作为前端服务器时,Tomcat与Apache作为后端,War包应部署在何处? ... [详细]
  • PHP自学必备:从零开始的准备工作与工具选择 ... [详细]
  • REST与RPC:选择哪种API架构风格?
    在探讨REST与RPC这两种API架构风格的选择时,本文首先介绍了RPC(远程过程调用)的概念。RPC允许客户端通过网络调用远程服务器上的函数或方法,从而实现分布式系统的功能调用。相比之下,REST(Representational State Transfer)则基于资源的交互模型,通过HTTP协议进行数据传输和操作。本文将详细分析两种架构风格的特点、适用场景及其优缺点,帮助开发者根据具体需求做出合适的选择。 ... [详细]
  • 在 Kubernetes 中,Pod 的调度通常由集群的自动调度策略决定,这些策略主要关注资源充足性和负载均衡。然而,在某些场景下,用户可能需要更精细地控制 Pod 的调度行为,例如将特定的服务(如 GitLab)部署到特定节点上,以提高性能或满足特定需求。本文深入解析了 Kubernetes 的亲和性调度机制,并探讨了多种优化策略,帮助用户实现更高效、更灵活的资源管理。 ... [详细]
  • 本文深入解析了 Apache 配置文件 `httpd.conf` 和 `.htaccess` 的优化方法,探讨了如何通过合理配置提升服务器性能和安全性。文章详细介绍了这两个文件的关键参数及其作用,并提供了实际应用中的最佳实践,帮助读者更好地理解和运用 Apache 配置。 ... [详细]
  • 端口转发(Port Forwarding)类似于服务重定向,许多路由器中也称其为虚拟服务器(Virtual Server)。通过合理配置端口转发,可以实现外部网络对内部网络中特定设备和服务的高效访问,从而提高通信效率和灵活性。此外,正确设置端口转发还能增强网络安全,确保只有授权的流量能够进入内网,有效防止未授权访问和潜在威胁。 ... [详细]
author-avatar
MC_炽焰
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有