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

计算机网络之应用层之万维网和HTTP协议

参考链接CSKAOYAN.COM万维网万维网WWW(WorldWideWeb)是一个大规模的、联机式的信息储藏所资料空间,是无数个网

参考链接


  1. CSKAOYAN.COM

万维网

万维网WWW(World Wide Web)是一个大规模的、联机式的信息储藏所/资料空间,是无数个网络站点和网页的集合

URL

同一资源定位符URL,是资源(文字、视频、音频等)的唯一标识

URL一般形式:
<协议>://<主机>:<端口>/<路径>

用户通过点击超链接获取资源&#xff0c;这些资源通过超文本传输协议&#xff08;HTTP&#xff09;传送给使用者

万维网以客户/服务器方式工作&#xff0c;用户使用的浏览器是万维网客户程序&#xff0c;万维网文档所驻留的主机运行服务器程序

万维网使用超文本标记语言HTML&#xff0c;使得万维网页面设计者可以很方便地从一个界面的链接转到另一个界面&#xff0c;并能够在自己的屏幕上显示出来

超文本传输协议HTTP

HTTP协议定义了浏览器&#xff08;万维网客户进程&#xff09;怎样向万维网服务器请求万维网文档&#xff0c;以及服务器怎样把文档传送给浏览器

用户浏览页面的方法&#xff1a;

  1. 输入URL
  2. 点击超链接

一个服务器进程监听TCP的端口80

具体过程&#xff1a;

  1. 浏览器分析URL
  2. 浏览器向DNS请求解析IP地址
  3. DNS解析出IP地址
  4. 浏览器与服务器建立TCP连接
  5. 浏览器发出取文件命令
  6. 服务器响应
  7. 释放TCP连接
  8. 浏览器显示
    在这里插入图片描述

HTTP协议的特点

HTTP协议是无状态的

但是在实际工作中&#xff0c;一些万维网站点常常希望能够识别用户。所以有COOKIE

COOKIE是存储在用户主机中的文本文件&#xff0c;记录一段时间内某用户&#xff08;使用识别码识别&#xff0c;如“123456”&#xff09;的访问记录&#xff0c;用于提供个性化服务

HTTP采用TCP作为运输层协议&#xff0c;但HTTP协议本身是无连接的&#xff08;通信双方在交换HTTP报文之前不需要先建立HTTP连接&#xff09;

HTTP连接方式


  1. 持久连接&#xff08;Keep-alive&#xff09;&#xff1a;i) 非流水线&#xff1b;ii) 流水线
    在这里插入图片描述

  2. 非持久连接&#xff08;Close&#xff09;

在这里插入图片描述

HTTP报文结构

HTTP报文是面向文本的&#xff0c;因此在报文中的每一个字段都是一些ASCII码串

请求报文

在这里插入图片描述

首部行&#xff1a;说明浏览器、服务器和报文主体的一些信息

某浏览器发出的请求报文&#xff1a;
在这里插入图片描述

响应报文

在这里插入图片描述

状态码&#xff1a;

  1. 1xx表示通知信息的&#xff0c;如请求收到了或正在处理

  2. 2xx表示成功&#xff0c;如接受或知道了。202 Accepted

  3. 3xx表示重定向&#xff0c;如要完成请求还必须采取进一步的行动。301 Moved Permanently

  4. 4xx表示客户的差错&#xff0c;如请求中有错误的语法或不能完成。404 Not Found

  5. 5xx表示服务器的差错&#xff0c;如服务器失效无法完成请求


推荐阅读
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • UNP 第9章:主机名与地址转换
    本章探讨了用于在主机名和数值地址之间进行转换的函数,如gethostbyname和gethostbyaddr。此外,还介绍了getservbyname和getservbyport函数,用于在服务器名和端口号之间进行转换。 ... [详细]
  • Docker的安全基准
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 优化联通光猫DNS服务器设置
    本文详细介绍了如何为联通光猫配置DNS服务器地址,以提高网络解析效率和访问体验。通过智能线路解析功能,域名解析可以根据访问者的IP来源和类型进行差异化处理,从而实现更优的网络性能。 ... [详细]
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
  • 本周信息安全小组主要进行了CTF竞赛相关技能的学习,包括HTML和CSS的基础知识、逆向工程的初步探索以及整数溢出漏洞的学习。此外,还掌握了Linux命令行操作及互联网工作原理的基本概念。 ... [详细]
  • 探讨如何高效使用FastJSON进行JSON数据解析,特别是从复杂嵌套结构中提取特定字段值的方法。 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 使用 Azure Service Principal 和 Microsoft Graph API 获取 AAD 用户列表
    本文介绍了一段通用代码示例,该代码不仅能够操作 Azure Active Directory (AAD),还可以通过 Azure Service Principal 的授权访问和管理 Azure 订阅资源。Azure 的架构可以分为两个层级:AAD 和 Subscription。 ... [详细]
  • 如何配置Unturned服务器及其消息设置
    本文详细介绍了Unturned服务器的配置方法和消息设置技巧,帮助用户了解并优化服务器管理。同时,提供了关于云服务资源操作记录、远程登录设置以及文件传输的相关补充信息。 ... [详细]
  • DNN Community 和 Professional 版本的主要差异
    本文详细解析了 DotNetNuke (DNN) 的两种主要版本:Community 和 Professional。通过对比两者的功能和附加组件,帮助用户选择最适合其需求的版本。 ... [详细]
  • 尽管某些细分市场如WAN优化表现不佳,但全球运营商路由器和交换机市场持续增长。根据最新研究,该市场预计在2023年达到202亿美元的规模。 ... [详细]
  • Explore how Matterverse is redefining the metaverse experience, creating immersive and meaningful virtual environments that foster genuine connections and economic opportunities. ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • 深入理解Tornado模板系统
    本文详细介绍了Tornado框架中模板系统的使用方法。Tornado自带的轻量级、高效且灵活的模板语言位于tornado.template模块,支持嵌入Python代码片段,帮助开发者快速构建动态网页。 ... [详细]
author-avatar
康话口儿_536
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有