| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> web基础和http协议 -> 正文阅读 |
|
[网络协议]web基础和http协议 |
目录 前言?????? 掌握互联网知识,就要掌握网页相关的知识和HTTP协议的请求流程,这里将了解web基础知 识,包括域名的概念、DNS原理、静态网页和动态网页的相关知识等。21111111111 一、web简介1、dns与域名介绍1.1、域名 ?????? 网络是基于TCP/IP 协议进行通信和连接的,每一台主机都有一个唯一的标识(固定的IP地 址),用以区别在网络上成千上万个用户和计算机。网络在区分所有与之相连的网络和主机时,均 采用一种唯一、通用的地址格式,即每一个与网络相连接的计算机和服务器都被指派一个独一无二 的地址。为了保证网络上每台计算机的IP地址的唯一性,用户必须向特定机构申请注册,分配IP地 址。 ?????? 网络中的地址方案分为两套:IP地址系统和域名地址系统。这两套地址系统其实是一 一对应 的关系。 域名:由于IP地址是数字标识,使用时难以记忆和书写,因此在IP地址的基础上又发展出一种符号 化的地址方案,来代替数字型的IP地址。这个与网络上的数字型IP地址相对应的字符型地址,就被 称为域名。 1.2、域名结构类型 ①、定义:标识一组主机并提供它们的有关信息的树形结构(主要确定了根在哪,就可以确定每个 分支)。 ②、以".”根域为开始域名空间结构(从右往左看)根域位于域名空间最顶层,一般用一个".”表示。基 础单位,除了根域其他都只有一个上级域,有o或多个子域,同层域不可重复的子域或域名。 ③、顶级域:一般代表一种类型的组织机构或国家地区(主要有此两种类型构成),如:net(网络 公司)、com(商业)、org(民间团体组织)、edu(教育)、gov(政府)、mil(军事)、cn(中国)、jp(日 本)、hk(中国香港)。 ④、二级域:也叫子域用来标明顶级域内的一个特定的组织,国家顶级域下面的二级域名由国家网 络部门统一管理,如 .cn顶级域名下面设置的二级域名: .com.cn、.net.cn、 .edu.cn …。 ⑤、主机FQDN:主机位于域名空间最下层,就是一台具体的计算机。如:www、mail、都是具体 的计算机名字,可用www.sina.com.cn.、mail.sina.com.cn、来表示,这种表示方式称为FQDN(完 全合格域名),也是这台主机在域名中的全名。 1.3、DNS概念 ?????? 在互联网上域名与IP地址之间是一一对应的,域名便于人们记忆,但是机器之间只能互相认识 IP地址,它们之间的转换工作称为域名解析,域名解析要由专门的域名解析系统来完成,DNS就是 进行域名解析的系统。 1.4、DNS三种解析方式 ★生效顺序:1 hosts文件 ??? 2网卡配置文件 ???3 /etc/resolv.conf 1.4.1、/etc/ hosts ????????linux系统中负责快速解析的文件,包含了ip与主机名的映射关系,在没有DNS服务器的情况 下,使用本地/etc/hosts完成解析/映射,实现快速访问。 注:主要用于主机之间(IP和主机名)的映射/解析关系,示例:192.168.226.128 master。 192.168.226.129 node1 192.168.226.130 node2 1.4.2、/etc/resolv.conf ????????DNS客户端配置文件,主要用于设置DNS服务器的P和域名,还包含了主机域名的搜索顺序等 等,这个文件是由域名解析器(resolver,一个根据主机名解析IP地址的库)使用的配置文件。 注:主要用与匹配DNS服务器,示例: nameserver 114.114.114.114 nameserver 8.8.8.8 1.4.3、在网卡配置文件中定义 网卡配置文件/etc/ sysconfig/ network-scripts/ifcfg-ens33。 DNS1=114.114.114.114 DNS2=8.8.8.8 1.5、域名服务 ?????? 分布式,每台主机维护一个部分,保持和维护域名空间的程序,响应解析器的请求。解析端(客 户端)向DNS服务器发出请求的设备。 1.6、域名注册 ????????域名注册是Internet中用于解决地址对应问题的一种方法遵循先申请先注册原则。域名注册步 骤如下 ①、准备申请资料 1.7、web ?????? web (world wide web)即全球广域网,也称为万维网一种分布式图形信息系统,建立在Internet 上的一种网络服务。 web1.0 vs web2.0的区别: ????????web1.0 ????????以编辑为特征,网站提供给用户的内容是编辑处理后的,然后用户阅读网站提供的内容这个 过程是网站到用户的单向行为(静态页面的概念)。 ????????web2.0 ????????更注重用户的交互作用,用户既是网站内容的消费者(浏览者),也是网站内容的制造者;加 强了网站与用户之间的互动,网站内容基于用户提供,网站的诸多功能也由用户参与建设,实现了 网站与用户双向的交流与参与。 web2.0特征 ????????用户分享、以兴趣为聚合点的社群、开放的平台,活跃的用户。 二、网页与HTML2、基本概念2.1、网页基本概念 纯文本格式文件,编写语言为HTML、HTML5 index.html index.htm index.php 在用户的浏览器中被"翻译"成网页形式显示出来 2.2、网站 由一个一个页面构成的,是多个网页的结合体主页 打开网站后出现的第一个网页称为网站主页(或首页) 2.3、域名 浏览网页时输入的网址 2.4、HTTP/HTTPS 用来传输网页的通信协议(是否加密),是一种通讯/交互的标准/规范。 2.5、URL 是一种万维网寻址系统 2.6、HTML HTML:用来产号网页的超文本标记语言 超链接:是将网站中不同网页链接起来的功能 2.7网站发布 将制作好的网页上传到服务器供用户访问的过程 2.8、HTML ????????超文本标记语言,是一种规范,也是一种标准,它通过标记符来标记要显示的网页中的各个 部分。浏览器为解释和执行HTML源码的工具。 2.9、HTML文档的结构 ①、HTML网页
3、静态页面与动态页面3.1.1、静态页面定义 ?????? 在网站设计中,纯粹HTML格式的网页通常被称为“静态网页”,静态网页是标准的HTML文件扩 展名是.htm .html。 例如文本、图像、声音、Flash动画、客户端脚本和Activex控件及Java小程序等是网站建设的基 础,早期网站一般都由静态网页制作,没有后台数据库、不含程序和不可交互的网页。相对更新起 来比较麻烦,适用于一般更新较少的展示型网站。 3.1.2、静态页面特点: ????????每个静态网页都有一个固定的URL,且URL以.htm、.html、.shtml等常见形式为后缀,而不含 有"?"。 ????????网页内容一经发布到网站服务器上,无论是否有用户访问,每个静态网页都是保存在网站服 务器上的。 ????????静态网页的内容相对稳定,容易被搜索引擎检索。 ????????静态网页没有数据库的支持,在网站制作和维护方面工作量较大,因此当网站信息量很大时 完全依靠静态网页制作方式比较困难。 ????????静态网页的交互性较差,在功能方面有较大的限制。 ????????页面浏览速度迅速,过程无需连接数据库,开启页面速度快于动态页面。 3.2.1、动态页面 ?????? 动态网页是指跟静态网页相对的一种网页编程技术。网页URL不固定,能通过后台与用户交 互;在动态网页网址中有一个标志性的符号——"?";常用的语言有PHP、JSP、Python、Ruby 等。 3.2.2、动态页面特点 交互性:网页会根据用户的要求和选择而动态改变和响应,将浏览器作为客户端界面,这将是今后 wBB发展的大势所趋。 自动更新:无须手动地更新HTML文档,便会自动生成新的页面,可以大大节省工作量。 因时因人而变:当不同的时间,不同的人访问同一网址时会产生不同的页面。 三、HTTP协议4、HTTP协议简介、版本4.1、HTTP(超文本传输协议HyperText TransferProtocol)协议是互联网上应用最为广泛的一种网络 协议,它是基于TCP/IP协议的应用层传输协议,简单来说就是客户端和服务端进行数据传输的一 种规则。 4.2、HTTP/HTTPs是应用层上的协议,建立在传输层TCP之上,客户端通过与服务端进行TCP连 接(三次手握),之后发送HTTP请求与接收HTTPI响应都是通过访问Socket接口来调用TCP协议实 现。 4.3、HTTP 是一种无状态(stateless)协议 ????????HTTP协议本身不会对发送过的请求和相应的通信状态进行持久化处理。这样做的目的是为了 保持HTTP协议的简单性,从而能够快速处理大量的事务,提高效率。 ????????然而,在许多应用场景中,我们需要保持用户登录的状态或记录用户购物车中的商品。由于 HTTP是无状态协议,所以必须引入一些技术来记录管理状态,例如ICookie。 4.4、HTTP协议的版本 HTTP 0.9已过时 HTTP 1.0 HTTP 1.1 HTTP 2.0 5、cookie和session? ? ? ? ? ? ?? ? ? ? ? ? ?和session 都为了实现的是http的短期的持久化(内存/缓存方式,查询快、效率比较 高)。cookie、是缓存在用户端(client)浏览器中的(默认缓存一天),当下次客户端通过同一个浏 览器访问客户端的时候,会优先读取cookie中的缓存信息,向服务端进行请求,同时服务端收到客 户端请求的时候,读取到cookie文件,知道客户端之前找的是服务器A处理的任务,省资源,直接 将请求直接再交给服务器A处理。 两者对比:cookie省服务器性能session更安全。 6、HTTP状态码■ 当使用浏览器访问某一个URL, 会根据处理情况返回相应的处理状态 ■ 通常正常的状态码为2xx、3xx (如200) ■ 如果出现异常会返回4xx,5xx (如404)
■ 生产环境常见的HTTP状态码
7、HTTP协议请求流程分析????????用户输入URL (地址链接) (http:/ /ww. baidu.com:80/tools.html)客户端获取到端口及主机名 后,客户端利用DNS解析域名,首先客户端的浏览器会先找自身的缓存,如果有解析结束,如果没 有客户端会去找host文件,如果host 文件没有的话,客户端会去找本地的DNS缓存服务器,本地 的DNS缓存服务器没有的话,缓存服务器会去找根域,根域没有,会返回一个.com.? 然后本地缓存 服务器会去找顶级域,顶级域没有的话会返回baidu.com.,然后本地缓在服务器会去找二级域,二 级域解析完后会返回客户端。客户端解析到IP地址后会通过TCP的三次握手与服务器建立连接. 总结:■ 网页内容由网站内部采集发布的是Web1.0,内容由使用者提供的是Web2.0。 ■ POST和GET方法在缓存、安全性、长度限制等方面有区别。 ■ HTTP协议请求响应以报文形式传递。 ■ Fiddler是一款抓取HTTP数据包的工具软件,用于分析HTTP报文非常方便。 ? |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 1:27:27- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |