【网络小知识】当我在浏览器url输入文本后的解析流程/http协议对比https协议

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 当我在浏览器url输入文本后的解析流程/http协议对比https协议

⭐一、浏览器url解析流程

在浏览器地址栏输入文本后,比如 “www.baidu.com”,这个 URL 会被浏览器发送到DNS服务器进行解析和查找目标网站服务器 IP 地址。接下来,浏览器会通过TCP协议在互联网上建立一个传输连接,并与该IP地址的服务器通信。

具体来说,以下是在浏览器中输入 URL 后发生的过程:

浏览器会先检查输入的 URL 是否包含协议信息(如 http:// 或 https://)。如果没有,浏览器默认采用 http:// 协议。

浏览器将输入的 URL 发送到 DNS 服务器,以获取对应的网站 IP 地址。DNS 服务器返回该网站的 IP 地址给浏览器。

在获取到网站 IP 地址后,浏览器会利用 TCP/IP 协议与该IP地址的Web服务器建立一个客户机到服务器的连接。

建立连接后,浏览器向 Web 服务器发送一个 HTTP 请求,其中包括请求路径、请求方法、请求头和请求体等信息。

服务器接收到请求后,会进行处理,根据请求路径获取对应的资源文件,返回给浏览器构造好的 HTML 网页代码。

浏览器解析HTML并渲染出完整网页内容,同时执行 JavaScript、CSS 文件,最终呈现给用户界面。

总之,当我们输入 URL 后,浏览器会将其作为 HTTP 协议的请求信息发送给服务器,服务器处理后返回相应内容,这些过程涉及到的协议包括 DNS、TCP/IP 和HTTP等一系列技术。

⭐二、http协议对比https协议

HTTP(Hypertext Transfer Protocol)与 HTTPS(HTTP Secure)是两种不同的协议,它们之间有如下几个主要区别:

安全性:HTTP 传输使用明文形式传输数据,可能会被网络黑客截获并篡改、窥探和冒充等。而 HTTPS 传输则采用了 SSL/TLS 加密机制,能够对通信加密,确保数据安全。

证书验证:HTTPS 需要使用SSL/TLS 协议所需的数字证书,该证书需要由一个可信任的证书颁发机构(CA,Certificate Authority)或自己私钥签名,经过验证后才可以在客户端和服务器之间进行通信。而 HTTP 没有此类验证措施,容易遭受中间人(man-in-the-middle)攻击。

端口号:默认情况下,HTTP 使用 80 端口, HTTPS 使用 443 端口。

抗劫持能力:当出现 DNS 劫持(DNS Spoofing)时,HTTPS 可以使用 HSTS(Http Strict Transport Security)技术来防止无意义的访问错误页面;而 HTTP 则很难避免架设好存在风险的恶意地址。

性能:HTTPS 握手建立时,需要先进行数百毫秒的握手操作时间,稍稍影播客户端的响应速度。同时,传输加密后的数据需要很大的 CPU 资源,会略微减缓过程的速度。

总之,HTTP 仅是一个简单的协议规范,允许不同的客户端和服务器建立连接来交换资源,但数据传输并没有受到安全检查和加密,在通信过程中假冒、欺骗等方式实施网络攻击的风险比较高;而 HTTPS 使用了 SSL/TLS 加密机制,保证了数据在安全性以及身份验证方面的保障,但还要考虑 https 带来的计算消耗增加等硬件层面的成本。


相关文章
|
1月前
|
人工智能 Java 物联网
JAVA网络编程的未来:URL与URLConnection的无限可能,你准备好了吗?
随着技术的发展和互联网的普及,JAVA网络编程迎来新的机遇。本文通过案例分析,探讨URL与URLConnection在智能API调用和实时数据流处理中的关键作用,展望其未来趋势和潜力。
43 7
|
23天前
|
缓存 网络协议 JavaScript
浏览器输入url之后最后网页渲染出来经过了什么
【10月更文挑战第31天】从浏览器输入 URL 到网页渲染出来是一个涉及多个环节和技术的复杂过程,每个环节都对最终的网页显示效果和用户体验有着重要的影响。
27 3
|
1月前
|
JSON 安全 算法
JAVA网络编程中的URL与URLConnection:那些你不知道的秘密!
在Java网络编程中,URL与URLConnection是连接网络资源的两大基石。本文通过问题解答形式,揭示了它们的深层秘密,包括特殊字符处理、请求头设置、响应体读取、支持的HTTP方法及性能优化技巧,帮助你掌握高效、安全的网络编程技能。
54 9
|
26天前
|
存储 缓存 网络协议
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点,GET、POST的区别,Cookie与Session
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点、状态码、报文格式,GET、POST的区别,DNS的解析过程、数字证书、Cookie与Session,对称加密和非对称加密
|
1月前
|
JSON Java API
JAVA网络编程新纪元:URL与URLConnection的神级运用,你真的会了吗?
本文深入探讨了Java网络编程中URL和URLConnection的高级应用,通过示例代码展示了如何解析URL、发送GET请求并读取响应内容。文章挑战了传统认知,帮助读者更好地理解和运用这两个基础组件,提升网络编程能力。
47 5
|
28天前
|
域名解析 缓存 网络协议
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
|
2月前
|
弹性计算 安全 API
HTTP 405 Method Not Allowed:解析与解决
本文详细解析了HTTP 405 "Method Not Allowed" 错误,包括其定义、常见原因、示例代码及解决方案。通过检查API文档、修改请求方法或更新服务器配置,可有效解决此错误,提升Web开发效率。
|
2月前
|
缓存 前端开发 安全
前端开发者必备:HTTP状态码含义与用途解析,常见错误码产生原因及解决策略
前端开发者必备:HTTP状态码含义与用途解析,常见错误码产生原因及解决策略
144 0
|
3月前
|
前端开发 JavaScript
前端JS截取url上的参数
文章介绍了两种前端JS获取URL参数的方法:手动截取封装和使用URLSearchParams。
56 0
|
4月前
|
开发框架 前端开发 .NET
Asp.net Webapi 的 Post 方法不能把参数加到 URL 中?试试这样写
Asp.net Webapi 的 Post 方法不能把参数加到 URL 中?试试这样写