DNS WEB HTTP

DNS与域名

网络是基于 TCP/IP 协议进行通信和连接的。

每一台主机都有唯一的标识,用于区别在网络上成千上万个用户和计算机。即固定的IP地址(32位二进制数转换成为十进制数——点分十进制)。每一个与网络相连接的计算机和服务器都被指派一个独一无二的地址。

分配 IP 地址网络中的地址方案分为两套:IP地址系统和域名地址系统。这两套地址系统是对应的关系由于 IP 地址是数字标识,IP地址的基础上发展出一种符号化的地址方案,来代替数字型的 IP 地址。

DNS解析方式

  •  /etc/hosts 

在Linux系统中负责快速解析的文件,包含了ip与主机名的映射关系,(IP地址对应一个主机名)如无DNS服务器的情况下,使用本地/etc/hosts完成解析和映射,实现快速访问。

  • /etc/resolv.conf

DNS客户端配置文件,主要用于设置DNS服务器的IP和域名,还包含了主机域名的搜索顺序等,
主要是域名解析服务器使用的配置文件。

  • /etc/sysconfig/network-scripts/ifcfg-ens33

配置网卡文件,可在网卡配置文件中定义DNS1和DNS2的值。

生效顺序: hosts文件   网卡配置文件   /etc/resolv.conf

域名

标识一组主机并提供它们的有关信息的树形结构(主要确定了根在哪,就可以确定每个分支)

域名服务器
① 保持和维护域名空间的程序
② 响应解析器的请求

解析端(客户端)
向DNS服务器发出请求的设备,流程如下:

根域 —— 顶级域 —— 二级域 —— 子域 —— 主机名

域名注册

注册流程如下:

准备申请资料 —— 寻找域名注册网站 —— 查询域名 —— 正式申请 —— 申请成功使用

HTML

HTML概念

HTML超文本标记语言,是一种规范的,标准的语言格式,网页文件本身就是一个文本文件。HTML通过标记的方式,告诉浏览器如何显文本当中的内容。HTML是文本文件,所有能够生成txt文件的工具都可以进行编辑,修改之后的文件后缀名:.html 或者 .htm

网页

  • 网页

纯文本格式文件,编写语言为HTML、在用户的浏览器中被“翻译”成网页形式显示出来

  • 网站

由一个一个页面构成的,是多个网页的结合体

  • 主页

打开网站后出现的第一个网页称为网站主页(或首页)

  • 域名

浏览网页时输入的网址

  • HTTP/HTTPS

用来传输网页的通信协议(是否加密),是一种通讯/交互的标准/规范

  • URL

是一种万维网寻址系统(唯一标识性)

  • HTML 

用来编写网页的超文本标记语言

  • 超链接

超链接是将网站中不同网页链接起来的功能

  • 发布

将制作好的网页上传到服务器供用户访问的过程

Web

Web(World Wide Web)即全球广域网,也称为万维网一种分布式图形信息系统,建立在Internet上的一种网络服务。

Web1.0

以编辑为特征,网站提供给用户的内容是编辑处理后的,然后用户阅读网站提供的内容
这个过程是网站到用户的单向行为

Web2.0

更注重用户的交互作用,用户既是网站内容的消费者(浏览者),也是网站内容的制造者
加强了网站与用户之间的互动。

静态页面

静态网页是标准的HTML文件
扩展名是.htm、.html
例如:文本、图像、声音、Flash动画、客户端脚本和ActiveX控件及Java小程序等
是网站建设的基础,早期网站一般都由静态网页制作
没有后台数据库、不含程序和不可交互的网页
相对更新起来比较麻烦,适用于一般更新较少的展示型网站

静态页面特点

每个静态网页都有一个固定的URL,以 .htm  .htm 等常见形式为后缀,而不含有“?”
每个静态网页都是保存在网站服务器上的
静态网页的内容相对稳定,容易被搜索引擎检索
静态网页没有数据库的支持,制作和维护方面工作量较大,单纯使用静态困难较大
页面浏览速度迅速,过程无需连接数据库
无交互性,只能看功能受限

动态页面 

  • 网页URL不固定,用户可以和后台数据互动 交互
  • 在动态网页网址中,会包含特殊标记
  • 常用的语言有PHP、JSP、Python、Ruby等

动态页面特点 

  • 交互
  • 自动更新
  • 特效

HTTP协议

HTTP超文本传输协议(HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议,它是基于TCP协议的应用层传输协议,面向客户端和服务端进行数据传输的一种规则。

 HTTP是一种无状态 (stateless) 协议
HTTP协议本身不会对发送过的请求和相应的通信状态进行持久化处理。
这样做的目的是为了保持HTTP协议的简单性,从而能够快速处理大量的事务, 提高效率。

工作流程

  1. 客户端和服务端进行tcp连接。
    三次握手 —— 建立连接
  2. 客户端发送http请求,服务端接受到http请求之后,响应客户端的请求
  3. socket接口,通过端口进行通信
  4. 响应达到客户端,解析的过程(浏览器),用户查看,使用,访问。
  5. 访问,使用,查看,结束之后,断开连接
    四次挥手 —— 断开连接

Cookie

记录用户的登录状态,跟踪统计用户访问网站的习惯,识别用户的身份、保存用户数据。这个是服务器在用户计算机上的小文件。

HTTP 1.1

自带链接保持功能,长连接

https:加密通信协议,加密数据传输。加密过程涉及客户端和服务器之间进行密钥交换,确保只有合法的接受方,能够解密数据
证书:https使用数字证书验证身份
https:电子商务,银行网站;加密解密会对访问速度有一定影响。

长连接

一次性获取页面文件的所有信信息,无需再分开处理请求,这样速度大大加快。

连接保持

Keep - Alive 可传送多个HTTP请求和响应。减少了建立和关闭所消耗的延迟,连接保持的有效时长,默认为60秒。

连接资源占用

长时间保存,会降低服务器负载;如提高并发会使服务器耗尽资源

连接状态管理

长连接需要维护连接状态,服务器要跟踪每个连接状态,从而增加负担(因此就有了集群)

HTTP请求方式

请求头(Request Headers)包含请求体:

Accept:客户端可以接受的数据类型
Accept-Language:客户端可以接受的语言类型
User-Agent:浏览器的信息
Accpect-Encoding:客户端可以接受的编码格式
Host:表示请求的ip和端口号
Connection:告诉服务器请求连接如何处理
Cache-Control:缓存时间 图片或音频文件的缓存时间
Keep-Alive:通知服务器回传数据不要马上关闭,保持一小段的连接
Closed:马上关闭

 get请求方法

  • 从指定服务器获取数据
  • get请求可以被缓存
  • get请求会保存在浏览器记录中 Cookie
  • get请求长度有限制

post请求方法

  • post请求不能被缓存
  • post请求不会记录在浏览器记录中
  • 请求体长度无限制

状态码 —— 服务器提供      *面

请求之后,服务器会收到请求,有响应同时反馈一个码;接下来介绍响应码类型:

100 - 101信息提示
200 - 206成功请求响应
300 - 305重定向表示
100 - 101信息提示
200 - 206成功请求响应
300 - 305重定向表示

常用代码

200代表成功 “OK”
301请求的永久页面跳转
304请求到缓存
403

禁止访问

404请求的页面找不到
500服务器内部的错误(配置配错了)
503服务不可用
504网关请求超时

通信套接字  Socket

实现不同主机进行通信和数据交换,进程间传输标准:IP端口

HTTP协议中Socket作用:

  • 客户机套接字地址定义了一个唯一的客户进程
  • 服务器套接字地址定义了一个唯一的服务器进程

套接字相关的系统调用:

  • socket()  创建一个套接字
  • bind()    绑定IP和端口
  • listen()  监听
  • accept()  接收请求
  • connect() 请求连接建立
  • write()   发送
  • read()    接收
  • close()   关闭连接
  • ESTABLISHED:连接已经建立,正在传输数据

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/91590.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

应用程序运行报错:First section must be [net] or [network]:No such file or directory

应用程序报错环境: 在linux下,调用darknet训练的模型,报错:First section must be [net] or [network]:No such file or directory,并提示:"./src/utils.c:256: error: Assertion 0 failed." 如…

pytest自动化测试框架tep环境变量、fixtures、用例三者之间的关系

tep是一款测试工具,在pytest测试框架基础上集成了第三方包,提供项目脚手架,帮助以写Python代码方式,快速实现自动化项目落地。 在tep项目中,自动化测试用例都是放到tests目录下的,每个.py文件相互独立&…

TPAMI, 2023 | 用压缩隐逆向神经网络进行高精度稀疏雷达成像

CoIR: Compressive Implicit Radar | IEEE TPAMI, 2023 | 用压缩隐逆向神经网络进行高精度稀疏雷达成像 注1:本文系“无线感知论文速递”系列之一,致力于简洁清晰完整地介绍、解读无线感知领域最新的顶会/顶刊论文(包括但不限于Nature/Science及其子刊;MobiCom, Sigcom, MobiSy…

go的gin和gorm框架实现切换身份的接口

使用go的gin和gorm框架实现切换身份的接口,接收前端发送的JSON对象,查询数据库并更新,返回前端信息 接收前端发来的JSON对象,包含由openid和登陆状态组成的一个string和要切换的身份码int型 后端接收后判断要切换的身份是否低于该…

云原生网关API标准背景及发展现状

Gateway API是一个开源的API标准,源自Kubernetes SIG-NETWORK兴趣组。从出身角度讲,可谓根正苗红,自从开源以来备受关注,被寄予厚望。Gateway API旨在通过声明式、可扩展性和面向角色的接口来发展Kubernetes服务网络,并…

基于Selenium技术方案的爬虫入门实践

通过爬虫技术抓取网页,动态加载的数据或包含 JavaScript 的页面,需要使用一些特殊的技术和工具。以下是一些常用的技术方法: 使用浏览器模拟器:使用像 Selenium、PhantomJS 或其他类似工具可以模拟一个完整的浏览器环境&#xff0…

vue基础知识三:v-show和v-if有什么区别?使用场景分别是什么?

一、v-show与v-if的共同点 我们都知道在 vue 中 v-show 与 v-if 的作用效果是相同的(不含v-else)&#xff0c;都能控制元素在页面是否显示 在用法上也是相同的 <Model v-show"isShow" /> <Model v-if"isShow" />当表达式为true的时候&#…

9.3.2.2网络原理(传输层TCP)

TCP全部细节参考RFC标准文档 一.TCP特点: 有连接,可靠传输,面向字节流,全双工. 二.TCP数据报: 1.端口号是传输层的重要概念. 2.TCP的报头是变长的(UDP是固定的8字节),大小存在4位首部长度中,用4个bit位(0~15)表示长度单位是4字节.(TCP报头最大长度是60字节,前面20字节是固定…

[MAUI]在.NET MAUI中实现可拖拽排序列表

.NET MAUI 中提供了拖放(drag-drop)手势识别器&#xff0c;允许用户通过拖动手势来移动控件。在这篇文章中&#xff0c;我们将学习如何使用拖放手势识别器来实现可拖拽排序列表。在本例中&#xff0c;列表中显示不同大小的磁贴&#xff08;Tile&#xff09;并且可以拖拽排序。 …

【D3.js 01】

D3.js 01 说在前面1 概述2 配置Web环境3 HTML4 SVG5 DOM6 JS7 常用接口8 D3语法基础9 使用D3查询SVG10 使用D3设置SVG中属性11 修改整组属性12 使用D3添加与删除SVG元素13 数据读取 —— CSV数据14 D3.js的数值计算15 比例尺Scale - LinearScale - Band 16 引入坐标轴17 DATA-J…

13.3 目标检测和边界框

锚框的计算公式 假设原图的高为H,宽为W 详细公式推导 以同一个像素点为锚框&#xff0c;可以生成 (n个缩放 m个宽高比 -1 )个锚框 锚框的作用&#xff1a; 不用直接去预测真实框的四个坐标&#xff0c;而是&#xff1a; 1.先生成多个锚框。 2.预测每个锚框里是否含有要预测…

【11】Redis学习笔记 (微软windows版本)【Redis】

注意:官redis方不支持windows版本 只支持linux 此笔记是依托微软开发windows版本学习 一、前言 Redis简介&#xff1a; Redis&#xff08;Remote Dictionary Server&#xff09;是一个开源的内存数据结构存储系统&#xff0c;它也被称为数据结构服务器。Redis以键值对&am…

使用Python统计字符内容的占比

说明&#xff1a;如果有自己动手做过字符动画&#xff0c;会知道字符动画的“灵动性”核心在于使用的字符集。 简单来说&#xff0c;动画转为字符动画&#xff0c;原理是将动画转为灰阶图&#xff0c;灰度范围是0~255&#xff0c;然后将对应灰度的像素点转为对应比值的字符。这…

轻松抽象JavaScript

上一期说了伪随机方法中有一个问题&#xff0c;那就是如何得到0.1这个值 理论上是可以的&#xff0c;但是实践缺有很大区别 大海捞针可信吗&#xff1f;可行吗&#xff1f; 当然可行&#xff0c;也可行&#xff0c;用一块超级大磁铁&#xff0c;磁力拉满&#xff0c;而且还具…

【论文阅读】基于深度学习的时序预测——Non-stationary Transformers

系列文章链接 论文一&#xff1a;2020 Informer&#xff1a;长时序数据预测 论文二&#xff1a;2021 Autoformer&#xff1a;长序列数据预测 论文三&#xff1a;2022 FEDformer&#xff1a;长序列数据预测 论文四&#xff1a;2022 Non-Stationary Transformers&#xff1a;非平…

web-js

<html><head><title>基本语法</title></head><body><script>// window.alert("js");// document.write("js");// console.log("js");// function add(a,b){// return ab;// }var result functio…

商城-学习整理-高级-全文检索-ES(九)

目录 一、ES简介1、网址2、基本概念1、Index&#xff08;索引&#xff09;2、Type&#xff08;类型&#xff09;3、Document&#xff08;文档&#xff09;4、倒排索引机制4.1 正向索引和倒排索引4.2 正向索引4.3 倒排索引 3、相关软件及下载地址3.1 Kibana简介3.2 logstash简介…

【Go语言】go_session(超级详细)

目录 前言附件代码审计Index函数Admin函数Flask函数server.py问题 思路本地搭建环境admin绕过SaveUploadedFile方法payload 总结 前言 国赛初赛有一道题目go session&#xff0c;用go的Gin框架和pongo2模板引擎写的&#xff0c;是关于go的pongo2模板注入和flask的热加载&#…

分布式 - 服务器Nginx:一小时入门系列之代理缓冲与缓存

官方文档&#xff1a;https://nginx.org/en/docs/http/ngx_http_proxy_module.html 1. 代理缓冲 proxy_buffer 代理缓冲用于临时存储从后端服务器返回的响应数据。通过使用代理缓冲&#xff0c;Nginx可以在接收完整的响应后再将其发送给客户端&#xff0c;从而提高性能和效率…

智谷星图赵俊:让人才和区块链产业“双向奔赴”丨对话MVP

区块链产业需要什么样的人才&#xff1f;赵俊很有发言权。 赵俊是北京智谷星图科技有限公司的技术总监&#xff0c;也是FISCO BCOS官方认证讲师。他2017年接触区块链&#xff0c;随后选择人才培育领域深耕。“为区块链行业引进更多人才这件事很有价值&#xff0c;跟我的职业理…