http协议访问网址的流程

2023-11-11

http协议

http协议可以说是由三个部分组成的:超文本、URL、Http

  1. 超文本:网页中的信息,如文字、图片、视频。
  2. URL:统一资源定位符,由三个部分组成:协议、主机端口、文件名及路径。在这里插入图片描述

使用http协议的访问流程

例如我们想访问百度,则在浏览器中输入 www.baidu.com
然后浏览器到web服务器执行以下操作

  1. 浏览器向DNS请求解析,目的是为了将百度解析成IP地址 183.232.231.174
  2. DNS将IP地址 183.232.231.174 返回给浏览器
  3. 浏览器与服务器建立TCP连接(80端口)
  4. 浏览器请求文档:GET/index.html
  5. 服务器收到请求,向客户端返回状态码(2xx, 4xx, 5xx等)和响应的消息,若成功(2xx)则将index.html发送给浏览器。
  6. 释放TCP连接
  7. 浏览器中显示index.html的内容
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

http协议访问网址的流程 的相关文章

  • iOS平台Socket编程实践(一)

    iOS平台Socket编程实践 关于TCP Socket编程基础可以参看我的 我所不知道的TCP Socket编程 系列文章 iOS平台Socket编程主要内容及辅助工具 1 TCP协议编程 2 UDP协议编程 3 WireShark抓包辅
  • 网络编程之网络丢包故障如何定位?如何解决?

    引言 本期分享一个比较常见的网络问题 丢包 例如我们去ping一个网站 如果能ping通 且网站返回信息全面 则说明与网站服务器的通信是畅通的 如果ping不通 或者网站返回的信息不全等 则很可能是数据被丢包了 类似情况想必大家都不陌生 针
  • libevent(6)windows上使用iocp网络模型

    windows操作系统上不能使用epoll模型 只能使用iocp网络模型 这里我把怎么在windows上使用iocp的代码直接贴上 include
  • 【Python爬虫与数据分析】爬虫Json数据解析

    目录 一 Json文件数据解析 二 Json数据包解析获取图片资源 三 Json数据包解析获取视频资源 一 Json文件数据解析 json字符串 通常类似python数据类型中的列表和字典的结合 也可能是单独的列表或者字典格式 通常可以通过
  • TCP和UDP的最完整的区别

    欢迎访问个人网站 这里排版舒服点 TCP和UDP的最完整的区别 码到城攻TCP和UDP的最完整的区别https www codecomeon com posts 7 TCP UDP TCP与UDP基本区别 1 基于连接与无连接 2 TCP要
  • libev学习系列之三:libev编译安装

    libev学习系列之三 libev编译安装 版本说明 版本 作者 日期 备注 0 1 ZY 2019 5 31 初稿 目录 文章目录 libev学习系列之三 libev编译安装 版本说明 目录 源码结构 正常编译 交叉编译 源码结构 4 2
  • 基于Linux用C语言实现TCP/UDP图片和文件传输(socket)

    目录 一 TCP实现 1 服务端 2 客户端 二 UDP实现 1 服务端 2 客户端 一 TCP实现 传输控制协议 TCP Transmission Control Protocol 是为了在不可靠的互联网络上提供可靠的端到端字节流而专门设
  • Netty聊天系统(1)通过自定义协议实现客户端与服务器端通信

    1 自定义实现客户端与服务器端通信的协议 1 1 通信协议的设计 自定义的通信协议需要哪些内容 1 魔数 第一个字段一般是魔数 一般固定的几个字节 一个PNG图片的编码中有固定数量固定内容的字节 用于表示这是一个PNG图片 Java的Cla
  • TCP的粘包问题

    TCP transport control protocol 传输控制协议 是面向连接的 面向流的 提供高可靠性服务 收发两端 客户端和服务器端 都要有一一成对的socket 因此 发送端为了将多个发往接收端的包 更有效的发到对方 使用了优
  • Ubuntu 下同局域网主机访问Tomcat 服务器

    转自 https blog csdn net zm yang article details 70483439 搭建Tomcat环境 自己写些小应用 需要用到服务器 便在Ubuntu环境下搭建了个Tomcat服务器 搭建方法很简单 去官网下
  • TCP/IP编程之SO_REUSEADDR和SO_REUSEPORT套接字选项

    基本概念 SO REUSEADDR套接字选项能起到以下4个不同的功用 1 SO REUSEADDR允许启动一个监听服务器并捆绑众所周知端口 即使以前建立的该端口用作它们的本地端口的连接仍存在 这个条件通常是这样碰到的 a 启动一个监听服务器
  • UNIX网络编程之源代码的编译和使用

    UNIX网络编程入门 对于想学习网络编程的来说 UNIX网络编程 这书肯定是不二选择 所谓实践是检验真理的唯一标志 特别是对于编程来讲 再多的理论经验也比不过code一次 UNIX网络编程 这本书提供连源码下载 第三本版的源码可点击这里下载
  • 170_web服务器_两个需求【1-】获取虚拟机上数据库数据显示到网页 【2-】网页下拉框数据,发送到MQTT服务器上【html实现网页,.js实现内在,.cgi实现内核】

    实例 html 两个功能一起实现在网页 表面
  • 关于Socket编程中的inet_ntop、inet_pton和inet_ntoa、inet_addr

    VS2013中调试Socket代码时 遇到了点小问题 问题代码为 cpp view plain copy inet ntoa addrClient sin addr 生成错误消息为 plain view plain copy error C
  • linux socket非阻塞之connect 函数

    1 connect原型 include
  • 一起来学nginx(一)

    一起来学nginx 一 nginx概述 nginx是一款web服务器 相当于一个软件 除了nginx还有哪些web服务器 apche openresty nginx的优点 高并发 高性能 可扩展性好 nginx是模块化的 可靠性 热部署 在
  • C++知识分享: Socket 编程详解,万字长文

    介绍 Socket编程让你沮丧吗 从man pages中很难得到有用的信息吗 你想跟上时代去编Internet相关的程序 但是为你在调用 connect 前的bind 的结构而不知所措 等等 好在我已经将这些事完成了 我将和所有人共享我的知
  • c99编译报错改用gnu99

    使用c99编译出警告信息 implicit declaration of function usleep 按常规来讲 出现 implicit declaration of function xxxx 是因为头文件未包含导致的 但是uslee
  • Node.js开发入门—HTTP文件服务器

    HelloWorld示例只有演示意义 这次我们来搞一个实际的例子 文件服务器 我们使用Node js创建一个HTTP协议的文件服务器 你可以使用浏览器或其它下载工具到文件服务器上下载文件 用Node js实现的HTTP文件服务器 比我在Qt
  • websocket协议

    WebSocket是一种在Web应用程序中实现实时双向通信的协议 一种在单个TCP连接上进行全双工通信的协议 它使得客户端和服务器之间的数据交换变得更加简单 允许服务端主动向客户端推送数据 WebSocket 与 HTTP 2 一样 其实都

随机推荐

  • angular : 自定义组件双向绑定 [(ngModel)]

    NG VALUE ACCESSOR 用于为表单控件提供 ControlValueAccessor interface ControlValueAccessor writeValue obj any void registerOnChange
  • Java进阶9--多线程

    Java进阶9 多线程 文章目录 Java进阶9 多线程 概述 一个线程的生命周期 线程的优先级 创建一个线程 通过实现 Runnable 接口来创建线程 通过继承Thread来创建线程 Thread 方法 实例 通过 Callable 和
  • next.js 源码解析 - getStaticProps、getStaticPaths 篇

    好久前写了关于 getStaticProps 和 getStaticPaths 的内容 然而半年过去了源码解析就一直忘记了 不久前有人提醒才想起来 补下坑 本文主要是解读下 getStaticProps getStaticPaths 相关的
  • 基于主成分分析(PCA)的人脸识别算法

    本次实战的所有数据 文献 代码及输出均在以下百度云链接 链接 https pan baidu com s 1tR3VCyHxL7EZx su 3mxNg 提取码 siso 1 要求 实战的数据及要求如下 用到的数据库为XM2VTS中的前20
  • 二进制转换为三进制 ——C++实现

    二进制转换为三进制 题目 输入一个2进制的数 要求输出该2进制数的3进制表示 在3进制的表示中 只有0 1 2三种符号 Input 第1行是测试数据的组数n 后面跟着n行输入 每组测试数据占1行 包括一个以0和1组成的字符串 字符串长度至少
  • 简单的用Python采集招聘数据内容,并做可视化分析!

    哈喽大家好 现在刚毕业 很多小伙伴因为找不到工作或者找了很多也不喜欢 再有懒一点的 太热了根本不想出门到处找 所以今天给大家分享使用Python批量采集招聘数据 进行可视化分析 轻松找到心仪工作 话不多说 我们直接开始 准备工作 软件工具
  • linux 卸载 rtx,在Ubuntu 18.04系统中安装RTX 2080Ti显卡驱动的方法

    在Ubuntu 18 04操作系统中使用GeForce RTX 2080Ti显卡 但是系统内置的驱动与PPA安装都不行 需要安装NVidia官方的驱动才能运行起来 下面是实现的方法 1 先禁用Ubuntu 18 04系统默认显卡驱动 打开系
  • ECM麦克风电路元器件计算

    ECM麦克风电路元器件设计 一 计算Micbias 偏置电阻R R 偏置电压 micbias电压 静态电流 1 偏置电阻计算案例 供电2V ECM麦克风电流500uA 偏置电阻取值 设置合适的偏置电阻 麦克风实现最大输出 需麦克风两端电压是
  • Multisim14基本介绍(上)

    Multisim14是一种专门用于电路仿真和设计的软件之一 是NI公司下属的ElectroNIcs Workbench Group推出的以Windows为基础的仿真工具 是目前最为流行的EDA软件之一 该软件基于PC平台 采用图形操作界面虚
  • ValueError: Input contains NaN, infinity or a value too large for dtype('float64').

    笔者在使用LogisticRegression模型进行预测时 报错 Traceback most recent call last File D 软件 学习 Python MachineLearing taitannike train py
  • Linux Docker容器 镜像的详解与创建

    一 什么是docker 镜像 就是把业务代码 可运行环境进行整体的打包 二 如何创建docker镜像 现在docker官方共有仓库里面有大量的镜像 所以最基础的镜像 我们可以在公有仓库直接拉取 因为这些镜像都是原厂维护 可以得到即使的更新和
  • 响应式原理

    vue响应式原理 vue2 vue2中使用了ES5里面的Object defineProperty方法 给对应data中的数据的每个值添加了set和get方法 当值被修改时 就会触发对应的set方法 set方法里会通知独影的watcher
  • Python循环结构——for

    for循环是循环结构中的另外一种 基本使用方法 for 变量名 in 目标对象 用于循环的子代码 在for循环中 必定存在一个变量作为游标 且变量会在每次循环开始时自动发生变化 如果没有特别设定变化的值 则默认为 1 当目标对象为列表 字典
  • redis学习:redisKey的基本命令

    Redis是一个开源 BSD许可 内存存储的数据结构服务器 可用作数据库 高速缓存和消息队列代理 它支持字符串 哈希表 列表 集合 有序集合 位图 hyperloglogs等数据类型 内置复制 Lua脚本 LRU收回 事务以及不同级别磁盘持
  • 激光雕刻机:废旧光驱的涅槃之路

    激光雕刻机 废旧光驱的涅槃之路 从 FeedzShare 1天最热 有超过 100 人喜欢此条目 来自 www guokr com FeedzShare 发布时间 2011年04月20日 已有 5 人推荐 DIYer zieak 制作时间
  • ROS 安装详细教程 —— Ubuntu20.04 LTS 安装

    ROS 安装详细教程 Ubuntu20 04 LTS 安装 ROS 简介 官方文档对 ROS 的介绍如下 The Robot Operating System ROS is a set of software libraries and t
  • 网站优化搜索引擎与关键词

    网站优化搜索引擎与关键词 人们不应该高估搜索引擎的智商 这不利于seo的研究 事实上 搜索引擎是非常愚蠢的 让我们举一个非常简单的例子 你在搜索引擎中输入 教师 这个词 搜索引擎就会给出一个准确的搜索列表 我们不会给出 教师 一词的检索信息
  • 使用Docker部署前后端分离项目

    目录 引言 部署需要用到的镜像汇总 1 Redis部署 1 搜索Redis镜像 2 拉取Redis镜像 3 创建Redis容器 2 MySQL部署 1 拉取MySQL镜像 2 查看镜像 3 启动MySQL容器 4 使用本地Navicat测试
  • 报错(内存溢出):Exception in thread "Thread-8" java.lang.OutOfMemoryError: PermGen space

    Exception in thread Thread 8 java lang OutOfMemoryError PermGen space 解决办法 能正常使用 但是偶尔会报下面这个错误 从偶尔这个说法来看 是你热部署次数太多了 导致JVM
  • http协议访问网址的流程

    http协议 http协议可以说是由三个部分组成的 超文本 URL Http 超文本 网页中的信息 如文字 图片 视频 URL 统一资源定位符 由三个部分组成 协议 主机端口 文件名及路径 使用http协议的访问流程 例如我们想访问百度 则