DNS WEB HTTP

news2024/11/14 12:12:37

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重定向表示
400 - 415客户端错误(请求失败)
500 - 505服务端错误(响应失败)

常用代码

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.coloradmin.cn/o/821202.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

xml的学习笔记

学习视频:093-尚硅谷-xml-什么是XML以及它的作用_哔哩哔哩_bilibili 目录 XML简介 XML的作用 XML语法 1.文档声明 2.xml注释 3.元素标签 4.xml属性 5.语法规则 1.所有xml元素都须有关闭标签(也就是闭合) 2.xml 标签对大小写敏感 3.xml必须正确的嵌套 4…

前端工程化最佳实践:项目结构、代码规范和文档管理

文章目录 前端工程化最佳实践项目结构设计与组织文档管理和注释规范国际化和本地化实践 前端工程化的未来发展趋势前端工程化领域的最新技术和工具WebAssembly 和前端性能优化可持续性和可访问性的趋势 总结前端工程化的关键知识点前端工程化对项目和团队的价值 前端工程化最佳…

玩转顺序表——【数据结构】

在C语言学习中,我们经常会遇见增删查改等一系列操作,而这些操作全都与线性表关联,没有线性表将会对这些操作完成的十分艰难!那今天就让我们来了解一下顺序表如何增删查改!!! 目录 1.线性表 2…

(二)Spring WeFlux响应式编程第二种整合方案|道法术器

Spring WebFlux 响应式异步编程|道法术器(一) Spring WeFlux响应式编程整合另一种方案|道法术器(二) R2dbc操作mysql 注意下面红色部分与上一篇"Spring WebFlux 响应式异步编程|道法术器(一)" 不一样的依赖包 技术整合: <!--设置spring-boot依赖的版本 --> &l…

Vault数据备份恢复-MySQL

前言 Vault提供了可靠的功能来保护数据库和其他关键数据。 对于MySQL数据库,Vault提供了一个易于使用的解决方案,可以自动创建和管理定期备份,并支持从备份中快速恢复数据。本文将介绍Vault后端存储MySQL的备份恢复,包括如何设置Vault、如何进行数据备份和还原、如何保护…

【K210视觉模块】内存报错问题

一、正常的打开CanMV IDE 连接 运行测试多次&#xff0c;出现如下报错 报错1&#xff1a;Memory Error: 模型缓冲区内存分配失败 报错2&#xff1a;MemoryError:超出正常MicroPython堆内存!请降低您正在运行此算法的图像的分辨率以绕过此问题! 二、解决方法 重新烧录固件库 …

【Python】pyqt6入门到入土系列,非常详细...

前言 嗨喽&#xff0c;大家好呀~这里是爱看美女的茜茜呐 一、什么是PyQt6? 简单介绍一下PyQt6 1、基础简介 PyQt6 Digia 公司的 Qt 程序的 Python 中间件。Qt库是最强大的GUI库之一。 PyQt6的官网&#xff1a;www.riverbankcomputing.co.uk/news。 PyQt6是由Riverbank Co…

Windows本地安装配置Qcadoo MES系统

简介 Qcadoo MES是一款功能强大且灵活的开源MES&#xff08;制造执行系统&#xff09;&#xff0c;旨在为制造业务提供全面的管理和监控解决方案。本篇博客将教您如何在Windows操作系统上安装和配置Qcadoo MES系统&#xff0c;以便您能够轻松管理和监控制造过程。 环境要求 …

java 数组的使用

数组 基本介绍 数组可以存放多个同一类型的数据&#xff0c;数组也是一种数据类型&#xff0c;是引用类型。 即&#xff1a;数组就是一组数据。 数组的使用 1、数组的定义 方法一 -> 单独声明 数据类型[] 数组名 new 数据类型[大小] 说明&#xff1a;int[] a new int…

GFS分布式文件系统概述以及集群部署

目录 一、GlusterFS简介 二、GlusterFS特点 2.1 扩展性和高性能 2.2 高可用性 2.3 全局统一命名空间 2.4 弹性卷管理 2.5 基于标准协议 三、GlusterFS术语 四、模块化堆栈式架构 五、GlusterFS 的工作流程 六、弹性 HASH 算法 七、GFS支持的七种卷 7.1 分布式卷&…

iOS——锁与死锁问题

iOS中的锁 什么是锁锁的分类互斥锁1. synchronized2. NSLock3. pthread 递归锁1. NSRecursiveLock2. pthread 信号量Semaphore1. dispatch_semaphore_t2. pthread 条件锁1. NSCodition2. NSCoditionLock3. POSIX Conditions 分布式锁NSDistributedLock 读写锁1. dispatch_barri…

安全人员爱用的12款开源渗透测试工具

回顾过去&#xff0c;黑客入侵异常困难&#xff0c;需要大量手动操作。然而&#xff0c;如今&#xff0c;一套自动化测试工具让渗透测试人员变身“半机械人”&#xff0c;能够比以往任何时候都更轻松地完成更多测试。以下12款开源渗透测试工具&#xff0c;可以帮助渗透测试人员…

JMeter发送get请求并分析返回结果

在实际工作的过程中&#xff0c;我们通常需要模拟接口&#xff0c;来进行接口测试&#xff0c;我们可以通过JMeter、postman等多种工具来进行接口测试&#xff0c;但是工具的如何使用对于我们来说并不是最重要的部分&#xff0c;最重要的是设计接口测试用例的思路与分析结果的能…

Gis入门,根据起止点和一个控制点计算二阶贝塞尔曲线(共三个控制点组成的线段转曲线)

前言 本章讲解如何在gis地图中使用起止点和一个控制点(总共三个控制点)生成二阶贝塞尔曲线。 三阶贝塞尔曲线请参考下一章《Gis入门,使用起止点和两个控制点生成三阶贝塞尔曲线(共四个控制点)》 贝塞尔曲线(Bezier curve)介绍 贝塞尔曲线(Bezier curve)是一种数学…

pyqt5:PyCharm中找不到External-tools解决办法

使用pyqt时会使用到PYUIC&#xff0c;晚上很多教程直接说在External-tools里使用就行&#xff0c;但是很多初始情况是没有的(但是有的就直接有&#xff0c;玄学~)&#xff0c;这篇文章介绍下找不到External-tools的时候怎么配置&#xff0c;这个找不到意思是下面&#xff1a; …

两级运算放大器设计与仿真

两级运算放大器的设计与仿真 0.两级运算放大器的设计步骤 运算放大器&#xff08;简称运放&#xff09;是许多模拟系统和混合信号系统中的一个完整部分。各种不同复杂程度的运放被用来实现各种功能&#xff1a;从直流偏置的产生到高速放大或滤波。伴随者每一代 CMOS 工艺&…

linux-安全技术

文章目录 安全机制墨菲定理信息安全防护的目标安全防护环节常见的安全攻击STRIDE 安全机制 墨菲定理 摘自百度百科 墨菲定律是一种心理学效应&#xff0c;1949年由美国的一名工程师爱德华墨菲&#xff08;Edward A. Murphy&#xff09;提出的&#xff0c;亦称墨菲法则、墨菲…

Robot Framweork之UI自动化测试---Selenium2Library常用关键字

在项目实际自动化测试过程中&#xff0c;主要用到了Selenium2Library库里的一些关键字和内置包BuiltIn的关键字&#xff0c;今天我们就来分享下Selenium2Library常用关键字。 我们把操作主要分为六大类&#xff1a; 一&#xff09;浏览器操作 二&#xff09;文本输入 三&…

RealEvo-SylixOS-Installer简介

RealEvo-SylixOS-Installer简介 RealEvo-SylixOS-Installer 是 RealEvo-IDE 提供的一个安装工具&#xff0c;只需几个简单的配置&#xff0c;就可以将 SylixOS 系统安装到指定的U盘或者磁盘上&#xff0c;这极大地方便了 SylixOS 操作系统在 x86 平台的安装。 如下图所示&…

Charlotte:完全不会被检测到的Shellcode启动器

关于Charlotte Charlotte是一款基于C实现的Shellcode启动器&#xff0c;并且完全不会被安全解决方案所检测到。 工具特性 截止至2021年5月13日之前&#xff0c;该工具的检测结果为0/26&#xff1b; 该工具支持动态调用Win32 API函数&#xff1b; 对Shellcode和函数名进行异…