web基础+HTTP协议+httpd详细配置

news2024/11/24 19:48:12

目目录录

  • 一、Web基础
    • 1.1 HTML概述
      • 1.1.1 HTML的文件结构
      • 1.1.2 HTML中的部分基本标签
    • 1.3 MIME
    • 1.4 URI 和 URL
      • 1.4 定义
      • 1.4.2 URI 和 URL 的区别
  • 二、静态资源和动态资源
    • 2.1 静态资源
    • 2.2 动态资源
  • 三、HTTP协议
    • 3.1 HTTP协议简介
    • 3.2 HTTP协议版本
    • 3.2 HTTP方法
    • 3.3 HTTP请求访问的完整过程
    • 3.4 HTTP状态码
    • 3.5 HTTP的请求报文和响应报文
      • 3.5.1 请求报文
      • 3.5.2 响应报文
    • 3.6 HTTP连接优化
  • 四、httpd概述
    • 4.1 安装
    • 4.2 httpd相关文件
      • 4.2.1 配置文件
      • 4.2.2 服务单元文件和主服务器程序文件
      • 4.2.3 模块文件
    • 4.3 httpd服务控制和启动(命令部分)
  • 五、httpd配置
    • 5.1 虚拟主机
      • 5.1.1 基于ip地址
        • 5.1.1.1 原理
        • 5.1.1.2 模拟实现
      • 5.1.2 基于端口地址
        • 5.1.2.1 原理
        • 5.1.2.2 模拟实现
      • 5.1.3 基于域名
        • 5.1.3.1 原理
        • 5.1.3.2 模拟实现
    • 5. 2 三种工作模式
      • 5.2.1 Worker
      • 5.2.2 Event
      • 5.2.3 Prefork
  • 六、Cookie和Session
    • 6.1 Cookie
    • 6.2 Session

在这里插入图片描述

一、Web基础

1.1 HTML概述

HTML(全称为Hypertext Markup Language)是一种标记语言,用于创建和组织Web页面的结构和内容。

HTML是构建Web页面的基础,定义了页面的结构和内容,通过标记和元素来实现。

1.1.1 HTML的文件结构

 <html>
     <head>网页的头部信息</head>
     <body>网页内容</body>
 </html>

1.1.2 HTML中的部分基本标签

基本标签含义
<html>HTML文档的根元素,包含文档的全部内容
<head>文档的头部,通常用于引入样式表、脚本以及设置文档的元信息
<title>文档的标题,显示在浏览器的标题栏或标签页上
<body>文档的主体部分,包含页面上的可见内容
<h1><h6>标题标签,用于表示不同级别的标题,<h1>是最高级别的标题
<p>段落标签,用于表示一个段落
<a>链接标签,用于创建一个超链接,并指定链接的目标URL
<img>图像标签,用于插入图像到页面中,并指定图像的源文件路径
<ul><li>无序列表标签,用于创建一个无序列表和列表项
<ol><li>有序列表标签,用于创建一个有序列表和列表项
<div>通用的容器标签,用于分组和组织页面中的内容
<span>内联容器标签,用于对文本的一部分进行特殊处理,如应用样式或事件

1.3 MIME

MIME是一种互联网标准,是一种用于标识文件类型的方法。

MIME类型由一个主类型和一个子类型组成,用斜杠(/)分隔,MIME类型的作用是告诉接收方如何解释和处理接收到的文件。

#常见的MIME类型

text/html  HTML网页
text/plain 纯文本文件
image/jpeg JPEG图像
image/png  PNG图像
audio/mpeg MP3音频
video/mp4  MP4视频
#举个例子
通过指定MIME类型为text/html,服务器可以告诉浏览器接收到的数据是HTML格式的网页,浏览器会相应地解析和显示该网页

1.4 URI 和 URL

1.4 定义

URI(Uniform Resource Identifier):统一资源标识,分为URL 和 URN。

URL(Uniform Resorce Locator):统一资源定位符,用于描述某服务器某特定资源位置

1.4.2 URI 和 URL 的区别

  • 定义范围:URI是一个广义的概念,用于标识和命名互联网上的资源,可以是URL、URN或其他形式。URL是URI的一种具体实现形式,用于资源的定位和访问。

  • 功能重点:URI强调资源的标识性,用于唯一标识和命名资源。URL则更注重资源的位置性,其中包含了定位和访问资源所需的详细信息。

在这里插入图片描述

二、静态资源和动态资源

静态资源和动态资源是两种常见的网络资源类型

静态资源和动态资源的区别在于内容是否固定不变

2.1 静态资源

静态资源指的是在服务器上保存的文件,其内容在请求和传输过程中不发生变化

静态资源可以是图片、CSS样式表、JavaScript文件、HTML文件等。

静态资源的请求一般是通过URL直接访问,当客户端发送请求时,服务器直接将这些文件返回给客户端,不进行任何处理

2.2 动态资源

动态资源则是在服务器端通过执行脚本或程序生成的内容,需要占用服务器的资源

服务器会根据请求中的参数和数据,执行相应的脚本或程序来生成动态内容,然后将生成的内容返回给客户端。

动态资源可以是动态网页、API接口等。

在这里插入图片描述

三、HTTP协议

3.1 HTTP协议简介

HTTP协议采用了请求/响应模型

客户端向服务器发送一个请求,请求头包含请求的方法、URL、协议版本、以及包含请求修饰符、客户信息和内容的类似于MIME的消息结构。

服务器以一个状态行作为响应,响应的内容包括消息协议的版本,成功或者错误编码加上服务器信息、实体元信息以及可能的实体内容。

3.2 HTTP协议版本

http 0.9  功能简陋,仅支持GET方法
http 1.0 相较以前版本可以支持POST、HEAD方法,支持HTML文件以外的其他类型,但不支持持久连接
http 1.1 支持持久连接,即在一个TCP连接里面完成多个http请求和响应,但是每个请求和响应是按照顺序一一对应的
http 2.0 支持完全多路复用,在一个连接里,客户端和浏览器都可以同时发送多个请求或回应,而且不用按照顺序一一对应( 也支持压缩,服务端主动推送)。

3.2 HTTP方法

HTTP定义了一组请求方法,用于指定客户端对资源的操作方式,这些请求命令称为HTTP方法。

方法作用
GET对服务器资源获取的简单请求
PUT向服务器上传指定的资源,如果资源已存在,则替换为新的内容
POST向服务器提交数据
DELETE删除服务器上的某些资源
HEAD请求页面的首部,获取资源的元信息
CONNECT用于ssl隧道的基于代理的请求
OPTIONS返回所有可用的方法,常用于跨域
TRACE追踪 请求–响应的传输路径
1、GET请求会向数据库发索取数据的请求,从而来获取信息,该请求不会产生副作用。无论进行多少次操作,结果都是一样的。

2、与GET不同的是,PUT请求是向服务器端发送数据的,从而改变信息,无论进行多少次PUT操作,其结果并没有不同。

3、POST请求同PUT请求类似,都是向服务器端发送数据的,但是该请求会改变数据的种类等资源,几乎目前所有的提交操作都是用POST请求的。

4、DELETE请求顾名思义,就是用来删除某一个资源的。

3.3 HTTP请求访问的完整过程

在这里插入图片描述

3.4 HTTP状态码

HTTP状态码是服务器在处理请求时返回给客户端的数字代码,用于表示请求的处理结果

HTTP协议状态码分类

状态码首位范围含义
1xx100-101信息提示,表示请求已被接收,需要进一步处理
2xx200-206成功,表示请求已成功处理
3xx300-305重定向,表示需要进一步的操作以完成请求
4xx400-415客户端错误,表示客户端发送的请求有错误
5xx500-505服务器错误,表示服务器在处理请求时发生了错误

HTTP协议常用的状态码

状态码含义
200一切正常
301永久重定向
302临时重定向
401用户名或密码错误
403禁止访问(客户端IP地址被拒绝)
404请求的资源在服务器上不存在
414请求URL头部过长
500服务器内部错误。比如脚本错误,编程语言语法错误
502无效网关
503服务器暂时无法处理请求,通常用于服务器维护或过载
504网关请求超时。程序执行时间过长导致响应超时,例如程序需要执行20秒,而nginx最大响应等待时间为10秒,这样就会出现超时。
#产生502(无效网关)的原因:

数据包没有送到网卡,网络问题;

数据包送进去了(交换机能抓到包),但是网卡没收到,网卡问题或防火墙问题;

网卡接收到了,处理不了,服务问题。(比如服务器当前连接太多,响应太慢;页面素材太多,带宽不够。)

3.5 HTTP的请求报文和响应报文

3.5.1 请求报文

在这里插入图片描述

#request 报文格式 

<method> <request-URL> <version>
<headers>

<entity-body>

第一行为请求行,包含请求方法、请求目标和HTTP协议版本号
第二行为请求头部,包含与请求相关的各种元数据信息

空行用于分隔头部和请求体的空行
第四行为请求体,可选项,包含实际的请求数据
#举个例子

curl 192.168.2.100 |head #从此服务器获取内容

在这里插入图片描述

#状态行
> GET / HTTP/1.1
#HTTP GET请求,即获取指定路径的内容,请求的路径为根路径("/"),表示请求服务器的默认页面

#头部字段
> User-Agent: curl/7.29.0
#指定客户端使用的User-Agent,该请求由curl/7.29.0发送
> Host: 192.168.2.100
#指定了要访问的服务器的主机地址
> Accept: */*
#指定了客户端可以接受的响应内容的类型,表示客户端可以接受任何类型的内容

3.5.2 响应报文

在这里插入图片描述

#response报文格式

<version> <status> <reason-phrase>
<headers>

<entity-body>

第一行为状态行,状态行由协议版本,状态码,状态码描述三部分组成。

第二行为响应头部,响应头包含与响应相关的各种元数据信息。

第三行为空行,用于分隔头部和响应体的空行。

第四行为响应体,可选项,包含实际的响应数据。
#举个例子

curl 192.168.2.100 |head #从此服务器获取内容

在这里插入图片描述

#响应状态行
< HTTP/1.1 403 Forbidden
#表示请求被拒绝,状态码403表示禁止访问

#头部字段
< Date: Mon, 21 Aug 2023 11:00:34 GMT
#表示响应的日期和时间
< Server: Apache/2.4.6 (CentOS)
#表示服务器正在使用的软件名称和版本
< Last-Modified: Thu, 16 Oct 2014 13:20:58 GMT
#表示所请求资源的最后修改日期和时间
< ETag: "1321-5058a1e728280"
#表示所请求资源的实体标签
< Accept-Ranges: bytes
#服务器是否支持断点续传。
< Content-Length: 4897
#响应实体主体的长度。
< Content-Type: text/html; charset=UTF-8
#实体主体的类型和字符编码,表示响应内容是以UTF-8编码的HTML文本。

3.6 HTTP连接优化

1)并行连接:并行连接通过同时建立多个连接 ,使得客户端可以并发地发送多个请求,以提高并发性和响应速度。

2)持久连接 :持久连接允许客户端和服务器之间在单个连接上发送多个HTTP请求和响应 ,而不是每个请求都要重新建立连接。

3) 管道化连接:管道化连接是一种在持久连接上发送多个请求而无需等待服务器响应 的机制。

在这里插入图片描述

四、httpd概述

4.1 安装

yum install -y httpd #安装

4.2 httpd相关文件

4.2.1 配置文件

#主配置文件
/etc/httpd/conf/httpd.conf  

#子配置文件
/etc/httpd/conf.d/*.conf 

#模块加载的配置文件
/etc/httpd/conf.d/conf.modules.d/  

检查配置语法httpd -tapache2 -t

站点网页文档根目录/var/www/html

4.2.2 服务单元文件和主服务器程序文件

服务单元文件

/usr/lib/systemd/system/httpd.service

配置文件:/etc/sysconfig/httpd

主服务器程序文件

/usr/sbin/httpd

4.2.3 模块文件

/etc/httpd/modules

/usr/lib64/httpd/modules

4.3 httpd服务控制和启动(命令部分)

#开启自启动/开机自动关闭 httpd服务
systemctl enable|disable httpd.service

开启httpd服务

systemctl start httpd.service
or
apachectl start
or
service httpd start

重启httpd服务

systemctl start httpd.service
or
apachectl restart
or
service httpd restart

停止httpd服务

systemctl stop httpd.service
or
apachectl stop
or
service httpd stop

查看httpd服务的运行状态

systemctl status httpd

配置文件语法检查

apachectl configtest
or
service httpd configtest

在这里插入图片描述

五、httpd配置

5.1 虚拟主机

httpd虚拟主机的作用是通过一个物理服务器来托管多个域名或网站,实现资源共享、个性化配置和多域名指向不同网站的功能,提高服务器资源利用率和降低成本。

5.1.1 基于ip地址

5.1.1.1 原理

每个虚拟主机分配一个唯一的IP地址,并通过服务器软件来指定每个虚拟主机使用的IP地址

5.1.1.2 模拟实现

systemctl stop firewalld
setenforce 0

rpm -q httpd #没安装就装一下

systemctl start httpd

cd /var/www/html/   #进入httpd站点文件目录
vim  index.html  #设定默认主页,默认主页名字必须为index.html

systemctl restart httpd  //重启httpd服务

请添加图片描述

mkdir ipv1  #创建虚拟机 所需目录

vim ipv1/index.html  #测试页面主页

在这里插入图片描述

vim /etc/httpd/conf.d/ipv.conf  #新建配置文件 除了IP地址不同

在这里插入图片描述

httpd -t #语法检查

在这里插入图片描述

#有报错时
vim   /etc/httpd/conf/httpd.conf 

ServerName www.example.com:80 #添加到主配置文件中

在这里插入图片描述
在这里插入图片描述

#配置IP地址为192.168.2.103的虚拟机,以此为例
vim /etc/httpd/conf/httpd.conf

mkdir /var/www/html/ipv1 #创建所需目录

httpd -t

vim /var/www/html/ipv1/index.html #编辑主页

在这里插入图片描述
在这里插入图片描述

在浏览器中输入  192.168.2.103:80

在这里插入图片描述

5.1.2 基于端口地址

5.1.2.1 原理

每个虚拟主机使用同一个IP地址,但使用不同的端口号来区分。

5.1.2.2 模拟实现

cp ip.conf port.conf

vim port.conf #修改配置文件 除了端口不同

在这里插入图片描述

#修改192.168.2.103对应主机的httpd.conf

vim /etc/httpd/conf/httpd.conf

在这里插入图片描述
在这里插入图片描述

#测试是否成功
curl 192.168.2.103:8080

curl 192.168.2.103:80

在这里插入图片描述

5.1.3 基于域名

5.1.3.1 原理

服务器软件根据请求头中的主机名(域名)来区分虚拟主机。

这种方法不需要分配额外的IP地址或端口,可以在同一个IP地址上承载多个虚拟主机。

5.1.3.2 模拟实现

cp ip.conf dns.conf
vim dns.conf #修改配置文件 除了域名不同

在这里插入图片描述

mkdir ipv2 #创建所需目录
vim /var/www/html/ipv2/index.html #编辑主页

在这里插入图片描述
在这里插入图片描述

httpd -t #语法检查

在这里插入图片描述

#编辑本地hosts文件,添加地址映射

vim /etc/hosts

在这里插入图片描述

#切换到目标地址为192.168.2.103的虚拟机
#具体操作不再演示

cd /etc/www/html 

mkdir ipv1 
mkdir ipv2

vim ./ipv1/index.html
vim ./ipv2/index.html

echo "<h1>www.ipv1.com</h1>" /var/www/html/ipv1/index.html

echo "<h1>www.ipv1.com</h1>" /var/www/html/ipv1/index.html

systemctl start httpd
打开虚拟机的内置浏览器,输入www.ipv1.com 和 www.ipv2.com,观察结果

在这里插入图片描述

在这里插入图片描述

5. 2 三种工作模式

在Apache HTTP Server中,有三种不同的MPM(Multi-Processing Modules)模型,即Worker、Event和Prefork。这些模型用于控制服务器是如何处理并发请求的。

5.2.1 Worker

Worker模型是一种多线程的处理模型。在Worker模型中,主服务器会创建一组固定数量的工作线程,在每个线程中处理并发的连接和请求。每个工作线程都可以独立地处理一个客户端请求,然后释放回连接池以供下一个请求使用。Worker模型适用于高并发的环境,在处理并发连接方面具有较好的性能。

5.2.2 Event

Event模型基于异步I/O和事件驱动的机制。在Event模型中,服务器主进程接收并监听连接,而连接的I/O操作是由工作线程池中的专用线程处理。工作线程通过监听事件循环处理请求,当有可读或可写的事件发生时,触发相应的回调函数来处理请求。Event模型可以提供更好的性能和吞吐量,尤其在处理大量并发连接时表现良好。

5.2.3 Prefork

Prefork模型是传统的多进程处理模型。在Prefork模型中,主服务器会预先派生出多个独立的子进程,每个子进程独立地处理连接和请求。每个子进程都具有自己的内存空间,因此具有较好的隔离性。然而,Prefork模型在处理大量并发连接时可能会占用更多的系统资源,并且在启动和维护多个进程方面开销较大。

六、Cookie和Session

Cookie和Session用于解决http协议无状态

6.1 Cookie

Cookie是服务器在用户的浏览器中存储的小型文本文件。当用户访问一个网站时,服务器可以通过HTTP响应的Set-Cookie标头将一个或多个Cookie发送给浏览器。浏览器会将这些Cookie存储在用户的计算机上,并在以后的请求中将它们发送回服务器。

每个Cookie都包括一个名称、一个值和一些可选的属性,如过期时间、域名、路径等。服务器可以使用Cookie来存储用户的偏好设置、会话标识符、购物车数据等。浏览器会在每次请求中自动发送与特定域名相关联的Cookie,使得服务器能够识别用户。

6.2 Session

Session是在服务器端存储用户状态的一种机制。当用户首次访问一个网站时,服务器会为该用户创建一个唯一的会话标识符(Session ID)。这个标识符通常被存储在Cookie中,但也可以通过其他方式(如URL参数)进行传递。

服务器使用Session来存储用户信息和其他相关数据。在每个请求中,浏览器会将Session ID作为Cookie发送给服务器,使得服务器能够识别并恢复与该用户相关联的会话数据。Session数据通常存储在服务器的内存或持久化存储中。

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

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

相关文章

李宏毅机器学习笔记:结构学习,HMM,CRF

李宏毅机器学习笔记&#xff1a;结构学习&#xff0c;HMM&#xff0c;CRF 1、隐马尔可夫模型HMM1.1Sequence2Sequence1.2 HMM1.3 Viterbi算法1.3 HMM模型的缺点 1、隐马尔可夫模型HMM 1.1Sequence2Sequence 什么是Seq2Seq问题呢&#xff1f;简单来说&#xff0c;就是输入是一…

RTSP/Onvif视频服务器EasyNVR安防视频云服务调用接口录像会被自动删除的问题解决方案

EasyNVR安防视频云服务是基于RTSP/Onvif协议接入的视频平台&#xff0c;可支持将接入的视频流进行全平台、全终端的分发&#xff0c;分发的视频流包括RTSP、RTMP、HTTP-FLV、WS-FLV、HLS、WebRTC等。平台丰富灵活的视频能力&#xff0c;可应用在智慧校园、智慧工厂、智慧水利等…

Python“牵手”京东商品详情数据采集方法,京东API申请步骤说明

京东平台API接口是为开发电商类应用程序而设计的一套完整的、跨浏览器、跨平台的接口规范。 京东API接口是指通过编程的方式&#xff0c;让开发者能够通过HTTP协议直接访问京东平台的数据&#xff0c;包括商品信息、店铺信息、物流信息等&#xff0c;从而实现京东平台的数据开…

自动驾驶合成数据科普一:不做真实数据的“颠覆者”,做“杠杆”

前言&#xff1a; 在7月底的一篇文章中&#xff0c;九章智驾提到&#xff0c;数据闭环能力是自动驾驶下半场的“入场券”&#xff0c;这一观点在行业内引起了广泛共鸣。 在数据闭环体系中&#xff0c;仿真技术无疑是非常关键的一环。仿真的起点是数据&#xff0c;而数据又分为真…

回归预测 | MATLAB实现WOA-RBF鲸鱼优化算法优化径向基函数神经网络多输入单输出回归预测(多指标,多图)

回归预测 | MATLAB实现WOA-RBF鲸鱼优化算法优化径向基函数神经网络多输入单输出回归预测&#xff08;多指标&#xff0c;多图&#xff09; 目录 回归预测 | MATLAB实现WOA-RBF鲸鱼优化算法优化径向基函数神经网络多输入单输出回归预测&#xff08;多指标&#xff0c;多图&#…

短视频seo源码矩阵系统开源---代码php分享

前言&#xff1a;短视频seo源码 短视频seo矩阵系统源码私有化部署 短视频seo源码 短视频seo矩阵系统源码私有化怎么部署&#xff1f; 首先我们来给大家普及一下什么是短视频seo矩阵系统&#xff1f;视频矩阵分为多平台矩阵与一个平台多账号矩阵&#xff0c;加上seo排名优化&…

EasyPOI 实战总结

EasyPOI实战总结 简介 easypoi功能如同名字easy,主打的功能就是容易,让一个没见接触过poi的人员 就可以方便的写出Excel导出,Excel模板导出,Excel导入,Word模板导出,通过简单的注解和模板 语言(熟悉的表达式语法),完成以前复杂的写法 使用EasyPOI 环境搭建 # 1.引入相关依…

R包开发一:R与Git版本控制

目录 1.安装Git 2-配置Git&#xff08;只需配置一次&#xff09; 3-用SSH连接GitHub(只需配置一次) 4-创建Github远程仓库 5-克隆仓库到本地 目标&#xff1a;创建的R包&#xff0c;包含Git版本控制&#xff0c;并且能在远程Github仓库同步&#xff0c;相当于发布在Github。…

基于Spring Boot的游泳馆管理系统的设计与实现(Java+spring boot+MySQL)

获取源码或者论文请私信博主 演示视频&#xff1a; 基于Spring Boot的游泳馆管理系统的设计与实现&#xff08;Javaspring bootMySQL&#xff09; 使用技术&#xff1a; 前端&#xff1a;html css javascript jQuery ajax thymeleaf 微信小程序 后端&#xff1a;Java spring…

R语言机器学习方法在生态经济学领域

近年来&#xff0c;人工智能领域已经取得突破性进展&#xff0c;对经济社会各个领域都产生了重大影响&#xff0c;结合了统计学、数据科学和计算机科学的机器学习是人工智能的主流方向之一&#xff0c;目前也在飞快的融入计量经济学研究。表面上机器学习通常使用大数据&#xf…

HarmonyOS学习路之方舟开发框架—学习ArkTS语言(状态管理 四)

Observed装饰器和ObjectLink装饰器&#xff1a;嵌套类对象属性变化 上文所述的装饰器仅能观察到第一层的变化&#xff0c;但是在实际应用开发中&#xff0c;应用会根据开发需要&#xff0c;封装自己的数据模型。对于多层嵌套的情况&#xff0c;比如二维数组&#xff0c;或者数…

pycharm远程连接docker容器

pycharm远程连接docker容器 1.根据镜像创建容器2.进入容器3.修改容器的root密码4. 容器安装openssh-server和openssh-client5.修改SSH配置文件6.重启ssh服务7. 退出测试8.配置pycharm并连接docker容器9. 选择docker环境 1.根据镜像创建容器 sudo docker run -itd --nameconn_t…

【目标检测】“复制-粘贴 copy-paste” 数据增强实现

文章目录 前言1. 效果展示代码说明3. 参考文档4. 不合适点 前言 本文来源论文《Simple Copy-Paste is a Strong Data Augmentation Method for Instance Segmentation》&#xff08;CVPR2020&#xff09;&#xff0c;对其数据增强方式进行实现。 论文地址&#xff1a;https:/…

uniapp国际化npm install vue-i18n报错

npm install vue-i18n //npmyarn add vue-i18n //yarn在vue2环境下&#xff0c;默认安装 npm install vue-i18n 的版本是 vue-i18n9.1.9&#xff0c;所以报错。 npm view vue-i18n versions --json 用以上命令查看版本&#xff1a; vue2建议5.0版本 npm install vue-i1…

认识Junit

1. 前言 2. Junit注解 2.1. 常用的注解 2.1.1. Test 表示当前方法是一个测试方法(不需要main来执行) Test void Test01() throws InterruptedException {System.out.println("测试用例1");WebDriver webDriver new ChromeDriver();webDriver.get("https:/…

【从零开始的rust web开发之路 二】axum中间件和共享状态使用

系列文章目录 第一章 axum学习使用 第二章 axum中间件使用 文章目录 系列文章目录前言一、中间件是什么二、中间件使用常用中间件使用中间件使用TraceLayer中间件实现请求日志打印自定义中间件 共享状态 前言 上篇文件讲了路由和参数相应相关的。axum还有个关键的地方是中间件…

ceph集群的扩容缩容

文章目录 集群扩容添加osd使用ceph-deploy工具手动添加 添加节点新节点前期准备新节点安装ceph&#xff0c;出现版本冲突 ceph-deploy增加节点 集群缩容删除osd删除节点 添加monitor节点删除monitor节点使用ceph-deploy卸载集群 实验所用虚拟机均为Centos 7.6系统&#xff0c;8…

sql2008 开启端口1433,进行远程连接SQL服务器

设置完成后&#xff0c;接着重启SQL服务器 注意本机测试的话&#xff0c;必须要关闭防火墙&#xff0c;如果是腾讯云或阿里云的话&#xff0c;必须开启1433端口。否则无法远程连接到SQL服务器的。 但是这里我们对于外网的项目&#xff0c;基本不会在客户端上直接用 这种模式去…

flutter get 命令行工具

mac终端执行: flutter pub global activate get_cli这个安装完以后会提示英文提示你要把一个 目录添加到mac环境变量中,下面的目录是你安装完以后提示你放到环境变量里的目录 export PATH"$PATH":"$HOME/.pub-cache/bin"mac13系统以后环境变量的2个文件如…

在思科(Cisco)设备上配置 DHCP 服务器

DHCP广泛用于LAN环境中&#xff0c;从集中式服务器动态分配主机IP地址&#xff0c;从而显着减少IP地址管理的开销。DHCP 还有助于节省有限的 IP 地址空间&#xff0c;因为不再需要将 IP 地址永久分配给主机&#xff0c;只有连接到网络的主机才会使用 IP 地址。DHCP 服务器将路由…