当前位置: 首页 > news >正文

快速上手:采用Let‘sEncrypt免费SSL证书配置网站Https (示例环境:Centos7.9+Nginx+Let‘sEncrypt)

1 关于Let’s Encrypt与Cerbot DNS验证

Let’s Encrypt 是一个提供 免费证书认证机构

Cerbot 是 Let’s Encrypt 提供的一个工具,用于自动化生成、验证和续订证书。

DNS验证是 Cerbot 支持的验证方式之一。相比 HTTP 验证或 TLS-ALPN 验证,DNS 验证更灵活,可以用于获取任意域名(如子域名或裸域名)的证书,无需直接访问服务器。 DNS 验证通过在目标域名的 DNS 记录中添加特定的文本记录(TXT 记录)来证明 对该域名的控制权。认证机构会查询域名的 DNS TXT 记录以验证域名所有权。

以下是 DNS 验证的具体步骤和背后逻辑:

(1) 生成挑战内容

  • Cerbot 向 Let’s Encrypt 发送证书申请,提供需要认证的域名。
  • Let’s Encrypt 返回一个挑战(Challenge),内容包括一个随机字符串(Challenge Token)。

(2) 计算验证字符串

  • Cerbot 结合 Challenge Token 和账户密钥生成一个验证字符串。
    • 验证字符串 = SHA256(account_key + token) 或类似算法的结果。
  • 这个字符串需要通过 DNS TXT 记录发布。

(3) 添加 DNS TXT 记录

  • Cerbot 会提示用户手动或通过 API 在域名的 DNS 配置中添加一条 TXT 记录:
    • 记录名: _acme-challenge.<your-domain>
    • 记录值: 验证字符串

例如,对于域名 example.com

_acme-challenge.example.com. IN TXT "验证字符串"

(4) 验证记录

  • Let’s Encrypt 会查询域名的 DNS 服务器,寻找 _acme-challenge.<your-domain> 的 TXT 记录。
  • 如果记录值与预期验证字符串匹配,则证明申请者对该域名具有控制权。

(5) 签发证书

  • 验证成功后,Let’s Encrypt 会签发证书,Cerbot 会下载并保存证书。

Let’s Encrypt官网

参考教程

2 网站HTTPS配置最佳实践

  • 使用Cerbot生成Let’s Encrypt证书、DNS厂家添加TXT记录、继续完成Cerbot的控制权认证

  • Nginx对网站进行Https配置(HTTP的重定向到HTTPS)

  • 业务服务的HTTPS配置,这里有两种方式(按需):

    • 🤷‍♂️服务本身支持HTTPS(一般开发后业务服务为http协议接口),如SpringBoot Web项目,可使用java keytool生成密钥配置ssl。若业务服务本身不支持https,不建议调整业务模块,保证业务开发的纯净。
    • 👍通过Nginx对接口进行转发,http重定向为https,这种方式是推荐的。

3 具体操作

3.1 服务器安装cerbot工具

cerbot用来管理Let’s Encrypt的证书(申请、续约)。我的服务器操作系统为centos7.9,执行的有效操作如下:

# 安装cerbot工具,cerbot用来管理Let's Encrypt的证书(申请、续约)
sudo yum install certbot

查看certbot版本验证工具安装是否成功:

[root@vm ~]# certbot --version
# 正确输出cerbot工具版本
certbot 1.11.0

3.2 cerbot使用 DNS 验证获取单域名证书

3.2.1 cerbot验证与证书生成(交互式)

  1. 键入下列命令,为指定域名生成证书(交互式方式进行,用户多次键入信息来完成验证信息的采集与证书的颁发)
sudo certbot certonly --manual --preferred-challenges dns -d demo.cn -d www.demo.cn
  1. 用户填入信息(邮箱)等用来订阅域名信息服务(如Let’s Encrypt的证书升级、到期通知等)

  1. 验证服务器与域名归属相关操作
    (1)cerbot工具输出dns解析txt值
    (2)dns解析后台添加txt的解析记录(两条)

  1. cerbot工具进行验证,验证通过,输出证书到服务器

3.2.2 Nginx配置

  1. 修改nginx配置(主要是配置站点重定向、启用ssl、配置证书路径)

nginx配置非常灵活且具有扩展性,其配置目录大致如下:

- /etc/nginx/| - nginx.conf 主配置文件(定义了全局配置、事件模块、HTTP 模块等核心设置)| - ./conf.d/ 配置目录(此目录一般被主配置文件中被include)| - www.demo.cn.conf (自己的站点配置,针对www.demo.cn的https配置就在这里)  | - ...# 使用的Nginx版本
[root@vm ~]# nginx -v
nginx version: nginx/1.20.1

www.demo.cn.conf配置文件内容:

server {listen 80;server_name demo.cn www.demo.cn;# Redirect all HTTP requests to HTTPSreturn 301 https://$host$request_uri;
}server {listen 443 ssl http2;server_name demo.cn www.demo.cn;root /usr/share/nginx/html;index index.html index.htm;# SSL Configurationssl_certificate /etc/letsencrypt/live/demo.cn/fullchain.pem;ssl_certificate_key /etc/letsencrypt/live/demo.cn/privkey.pem;ssl_session_cache shared:SSL:1m;ssl_session_timeout 10m;ssl_ciphers HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers on;# Additional security headers (optional)add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;# Error pageserror_page 404 /404.html;location = /404.html {}error_page 500 502 503 504 /50x.html;location = /50x.html {}# Default locationlocation / {try_files $uri $uri/ =404;}
}
  1. 重启nginx刷新配置
# 重启nginx
sudo systemctl restart nginx
# 查看nginx状态
sudo systemctl status nginx
  1. 清空缓存,查看网站

没错,到此为止网站已经完成了https的配置,有几点说明:

  • nginx.conf配置未作修改!但需要检查nginx.conf配置中是否include了conf.d配置目录。
  • 如果之前网站接入的服务为http,需要对服务进行调整使协议兼容,可以通过使用nginx反向代理服务为https(推荐),或者改造服务自身支持https。
  1. 通过nginx反向代理API服务为https的配置大致如下
server {listen 443 ssl http2;server_name demo.cn www.demo.cn;...location /your-api/module1 {allow 127.0.0.1;       # 本地回环地址allow otherip; # 允许指定的 IP 地址allow ::1;             # IPv6 本地地址deny all;              # 禁止其他所有来源proxy_pass http://127.0.0.1:8080;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}location /your-api/module2 {allow 127.0.0.1;       # 本地回环地址allow otherip; # 允许指定的 IP 地址allow ::1;             # IPv6 本地地址deny all;              # 禁止其他所有来源proxy_pass http://127.0.0.1:8081;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}...}

3.2.3 cerbot证书续费

certbot certonly --renew-by-default -d demo.cn -d www.demo.cn
# 会输出1、2两种验证方式,我采用的是模式2

续费命令说明:

  1. certbot
    • Certbot 是一个用于申请和管理 Let’s Encrypt SSL 证书的工具。
  2. certonly**
    • 表示只申请证书,不自动安装或配置 Web 服务器(如 Nginx 或 Apache)。
    • 适合手动配置证书的场景。
  3. --renew-by-default
    • 如果证书已经存在,Certbot 会尝试续费(renew)而不是重新申请。
    • 如果证书不存在,Certbot 会申请新证书。
  4. -d demo.cn -d www.demo.cn
    • -d 参数用于指定域名。
    • 这里申请的是 demo.cnwww.demo.cn 两个域名的证书。
    • 多个 -d 参数表示申请一个包含多个域名的证书(SAN 证书)。

两种验证域名所有权:

  1. Spin up a temporary webserver (standalone)
    • Certbot 会启动一个临时的 Web 服务器来完成 HTTP-01 验证。
    • 适用场景:如果你没有运行 Web 服务器(如 Nginx 或 Apache),或者可以暂时停止 Web 服务器。
    • 注意事项:需要确保 80 端口未被占用,或者暂时停止 Web 服务器。
  2. Place files in webroot directory (webroot)
    • Certbot 会将验证文件放置在你的 Web 服务器的根目录(如 /var/www/html),通过 HTTP 访问验证文件。
    • 适用场景:如果你正在运行 Web 服务器(如 Nginx 或 Apache),并且不想停止服务。
    • 注意事项:需要指定 Web 根目录路径。

相关文章:

快速上手:采用Let‘sEncrypt免费SSL证书配置网站Https (示例环境:Centos7.9+Nginx+Let‘sEncrypt)

1 关于Let’s Encrypt与Cerbot DNS验证 Let’s Encrypt 是一个提供 免费证书 的 认证机构。 Cerbot 是 Let’s Encrypt 提供的一个工具&#xff0c;用于自动化生成、验证和续订证书。 DNS验证是 Cerbot 支持的验证方式之一。相比 HTTP 验证或 TLS-ALPN 验证&#xff0c;DNS …...

【项目】修改远程仓库地址、报错jdk

一、修改远程仓库地址 进入你刚刚克隆到本地的仓库目录&#xff0c;执行以下命令来修改远程仓库的 URL&#xff0c;将其指向你自己的新仓库&#xff1a; cd 原仓库名 git remote set-url origin <你自己的新仓库的 Git 地址>二、运行报错 多数jdk版本问题 三、 知识图…...

.NET体系架构

引言 .NET是由微软开发的一个广泛应用的开发平台&#xff0c;旨在帮助开发者构建各种类型的应用程序&#xff0c;包括桌面应用、Web应用、移动应用和云服务。最初&#xff0c;.NET平台的构建主要集中在Windows环境上&#xff0c;但随着.NET Core和随后.NET 5及以上版本的推出&…...

MTK平台-- 无线AP隔离功能

前言: 无线AP上大都有一个选项:启用该功能后,连接到同一AP的无线终端之间不能互相通信,但该功能并不限制无线终端和有线终端之间的通信。 Hostapd参数ap_isolate,用于控制AP隔离,但hostapd本身并不实现这一功能,只是将该参数通过nl80211传递给mac80211,由mac80211来实…...

初学stm32 --- 电源监控

目录 STM32 电源监控介绍 上电/掉电复位POR/PDR&#xff08;F1&#xff09; 可编程电压检测器(PVD)&#xff08;F1&#xff09; PVD相关寄存器介绍&#xff08;F1&#xff09; 电源控制寄存器 PWR_CR 电源控制/状态寄存器 PWR_CSR PVD相关HAL库驱动介绍 PVD的使用步骤 …...

小程序组件 —— 28 组件案例 - 推荐商品区域 - 实现结构样式

这一节目标是实现底部推荐商品的结构和样式&#xff0c;由于这里要求横向滚动&#xff0c;所以需要使用上节介绍的 scroll-view 功能&#xff0c;并使用 scroll-x 属性支持横向滚动&#xff0c;推荐商品区域中的每一个商品是一个单独的 view&#xff0c;每个view 中需要写三个组…...

深入了解 SSL/TLS 协议及其工作原理

深入了解 SSL/TLS 协议及其工作原理 一. 什么是 SSL/TLS?二. SSL/TLS 握手过程三. SSL/TLS 数据加密与传输四. 总结 点个免费的赞和关注&#xff0c;有错误的地方请指出&#xff0c;看个人主页有惊喜。 作者&#xff1a;神的孩子都在歌唱 一. 什么是 SSL/TLS? 安全套接层&am…...

解决RuntimeError: No CUDA GPUs are available问题

今天运行之前可以正常运行的项目时&#xff0c;发现了以下问题&#xff1a; 接下来记录解决过程&#xff1a; 参考&#xff1a;os.environ[“CUDA_VISIBLE_DEVICES”]"2"的问题 因为代码中设置了选择了具体的GPU的型号&#xff0c;但是有可能没有这个GPU&#xff0…...

了解RabbitMQ中的Exchange:深入解析与实践应用

在分布式系统设计中&#xff0c;消息队列&#xff08;Message Queue&#xff09;扮演着至关重要的角色&#xff0c;而RabbitMQ作为开源消息代理软件的佼佼者&#xff0c;以其高性能、高可用性和丰富的功能特性&#xff0c;成为了众多开发者的首选。在RabbitMQ的核心组件中&…...

33.3K 的Freqtrade:开启加密货币自动化交易之旅

“ 如何更高效、智能地进行交易成为众多投资者关注的焦点。” Freqtrade 是一款用 Python 编写的免费开源加密货币交易机器人。它就像一位不知疲倦的智能交易助手&#xff0c;能够连接到众多主流加密货币交易所&#xff0c;如 Binance、Bitmart、Bybit 等&#xff08;支…...

(概率论)区间估计 和 置信区间 、 假设检验

参考文章1&#xff1a;3分钟&#xff0c;看懂区间估计and置信区间 - 知乎 (zhihu.com) 1、点估计的定义&#xff1a; 2、区间估计的定义&#xff1a; 参考文章2&#xff1a;【概率论】- (1)区间估计 - 知乎 (zhihu.com) 这篇文章中的2中&#xff0c;2.1、2.2、2.3描述了需要用到…...

MBTiles 及爬取到发布

MBTiles &#xff1a;https://github.com/mapbox/mbtiles-spec/blob/master/1.3/spec.md 1.MBTiles是什么 MBTiles是一个在SQLite 数据库存储瓦片地图数据的标准&#xff0c;该标准的目的是即时传输和使用数据。 作为一个容器格式&#xff0c;MBTiles可以存储任何瓦片数据,…...

uniapp使用chooseLocation安卓篇

本文章全部以高德地图为例 代码 <view class"bottom"><button click"choose">定位</button> </view> choose() {uni.chooseLocation({success: function(res) {console.log(位置名称&#xff1a; res.name);console.log(详细地…...

el-cascader 树状选择-点击父级禁用子级

背景&#xff1a;项目上需要实现树状选择&#xff0c;点击父级禁用子级的功能&#xff0c;element组件本身没有该配置项说明&#xff1a;需要实现几个功能点&#xff1a;点击父级禁用子级&#xff1b;再次点击取消禁用&#xff1b;仅回填所选级&#xff1b;上下级不关联实现代码…...

力扣经典题目之219. 存在重复元素 II

今天继续给大家分享一道力扣的做题心得今天这道题目是 219. 存在重复元素 II&#xff0c;我使用 hashmap 的方法来解题 题目如下&#xff0c;题目链接&#xff1a;219. 存在重复元素 II 1&#xff0c;题目分析 此题目给我们了一个整数数组 nums 和一个整数 k &#xff0c;需要…...

微服务保护—Sentinel快速入门+微服务整合 示例: 黑马商城

1.微服务保护 微服务保护是确保微服务架构可靠、稳定和安全的策略与技术。 在可靠性上&#xff0c;限流是控制进入微服务的请求数量&#xff0c;防止流量过大导致服务崩溃。比如电商促销时对商品详情服务进行流量限制。熔断是当被调用的微服务故障过多或响应过慢时&#xff0c;…...

Wireshark 学习笔记1

1.wireshark是什么 wireshark是一个可以进行数据包的捕获和分析的软件 2.基本使用过程 &#xff08;1&#xff09;选择合适的网卡 &#xff08;2&#xff09;开始捕获数据包 &#xff08;3&#xff09;过滤掉无用的数据包 &#xff08;4&#xff09;将捕获到的数据包保存为文件…...

voice agent实现方案调研

前言 目前语音交互主要的实现大体有两种: 级联方案,指的是,大规模语言模型 (LLM)、文本转语音 (TTS) 和语音转文本 (STT),客户的话通过vad断句到STT的语音转文本,经过大模型进行生成文本,生成文本后通过TTS进行回复给用户。(主流方案)端到端的方案,开发者无需再…...

pgpool配置安装之服务器的配置

第 1 章.服务器配置 1.1. 设置参数 1.1.1. 参数名称和值 所有参数名称均不区分大小写。每个参数都采用 值为以下五种类型之一&#xff1a;boolean、string、integer、floating point、 或枚举 &#xff08;enum&#xff09;。类型决定了设置 参数&#xff1a; 布尔&#xf…...

C++实现银行排队系统

网上看到的设计要求&#xff1a; 基本效果已经实现&#xff0c;希望大家帮忙指点指点。 程序中的一些基本模块 程序处理中的一些流程图 程序运行结果如下图&#xff1a; 程序代码如下&#xff1a; #include <iostream> #include <string> #include <random&g…...

UI自动化测试保姆级教程①

欢迎来到阿妮莫的学习小屋慢也好&#xff0c;步子小也好&#xff0c;在往前走就好 目录 自动化测试 简介 作用 分类 优缺点 优点 缺点(误区) UI自动化测试 自动化测试使用场景 自动化测试实现时间 Selenium框架 特点 Web自动化测试环境部署 Selenium包安装 浏览…...

多行输入模式(dquote> 提示符)double quote(双引号)

文章目录 1、引号不匹配具体原因解决办法如何避免此问题 2、double quote&#xff08;双引号&#xff09;出现原因解决办法预防措施 ~/Downloads/productqualification-develop git:[main] git commit -m "漏添加到暂存区的代码“ dgqdgqdeMac-mini productqualification-…...

【Uniapp-Vue3】原生事件监听及组件内置事件处理

如果我们想给元素添加一个事件就要使用到v-on&#xff0c;也可以简写为&#xff1a; <标签名 v-on:事件名"函数"></标签名> 或简写为 <标签名 事件名"函数"></标签名> 比如我们想要实现点击一下元素&#xff0c;num就1&#xff0c…...

微软 2024 最新技术全景洞察

亲爱的小伙伴们&#x1f618;&#xff0c;在求知的漫漫旅途中&#xff0c;若你对深度学习的奥秘、Java 与 Python 的奇妙世界&#xff0c;亦或是读研论文的撰写攻略有所探寻&#x1f9d0;&#xff0c;那不妨给我一个小小的关注吧&#x1f970;。我会精心筹备&#xff0c;在未来…...

PHP语言的并发编程

PHP语言的并发编程 引言 随着互联网技术的迅速发展&#xff0c;Web 应用的复杂性和用户并发请求的增加&#xff0c;要求开发者在构建高性能应用时考虑并发编程。并发编程允许程序在同一时间执行多个任务&#xff0c;这对于处理高流量网站、API 和实时应用程序至关重要。虽然 …...

Nginx 解析漏洞复现

漏洞原理 该漏洞与Nginx、php版本无关&#xff0c;属于用户配置不当造成的解析漏洞。主要是由于下面两个配置的错误&#xff1a; cgi.fix_pathinfo1&#xff0c;该配置项的作用是如果访问的.php文件不存在&#xff0c;则采用上层路径&#xff0c;例如访问/test.png/.php,一般…...

使用XAML语言仿写BiliBil登录界面

实现步骤 实现左右布局 使用了Grid两列的网格布局&#xff0c;第一列宽度占35%&#xff0c;第二列宽度占65%。使用容器布局Border包裹左右布局内容&#xff0c;设置背景色、设置圆角 <!-- 定义两列--> <Grid.ColumnDefinitions><ColumnDefinition Width &quo…...

Kubernetes Gateway API-4-TCPRoute和GRPCRoute

1 TCPRoute 目前 TCP routing 还处于实验阶段。 Gateway API 被设计为与多个协议一起工作&#xff0c;TCPRoute 就是这样一个允许管理TCP流量的路由。 在这个例子中&#xff0c;我们有一个 Gateway 资源和两个 TCPRoute 资源&#xff0c;它们按照以下规则分配流量&#xff1…...

【C++动态规划 前缀和】3250. 单调数组对的数目 I|1897

本文涉及知识点 C动态规划 C算法&#xff1a;前缀和、前缀乘积、前缀异或的原理、源码及测试用例 包括课程视频 LeetCode3250. 单调数组对的数目 I 给你一个长度为 n 的 正 整数数组 nums 。 如果两个 非负 整数数组 (arr1, arr2) 满足以下条件&#xff0c;我们称它们是 单调…...

【机器学习:五、使梯度下降法更快收敛的技巧】

1. 特征缩放 1.1 特征缩放的作用 特征缩放是一种将不同特征值归一化到相似范围的技术&#xff0c;可以显著提高梯度下降法的收敛速度。 作用&#xff1a; 避免数值差异导致的优化困难&#xff1a;当特征值范围差异较大时&#xff0c;代价函数呈现“长而窄”的形状&#xff0…...

系统思考—结构影响行为

托尔斯泰在《安娜卡列尼娜》中说&#xff1a;“幸福的家庭都是相似的&#xff0c;不幸的家庭各有各的不幸。”在企业经营管理中也如此——企业剧本总是相似&#xff0c;只是男女主角不同。 但无论外在表现如何变化&#xff0c;真正决定企业命运的&#xff0c;是系统结构。 企业…...

WorldQuant Settings 配置项名词解释

中文翻译及通俗解释 语言(Language) 解释:BRAIN 平台支持使用快速表达式(Fast Expression)语言。 例子:快速表达式就像写公式,比如 price + volume,简单易懂且高效。更多内容可以参考“可用操作符”。 工具类型(Instrument type) 解释:目前只能使用“股票”作为工…...

mybatisPlus动态sql语句 ${ew.sqlSegment}

mybatis-plus的${ew.sqlSegment}&#xff0c;${ew.sqlSelect}&#xff0c;${ew.customSqlSegment} ew是mapper方法里的Param(Constants.WRAPPER) Wrapper queryWrapper对象 简答介绍&#xff1a; ${ew.sqlSelect}&#xff1a;拼接select SQL主体 Select("select ${ew.…...

ATGM336H-5N71支持多种卫星导航系统的定位模块

ATGM336H-5N7 1是 9.7X10.1尺寸&#xff0c;AT6558芯片&#xff0c;导航模块&#xff0c;GPSBDSGLONASS定位&#xff0c;16.369M晶振&#xff0c;标准输出 &#xff0c;电源2.7V~3.6V, 支持 UART0和UART1接口 . ATGM336H-5N特性&#xff1a; Flash TCXO 天线检测 天线过流保护 …...

Maven中管理SNAPSHOT版本含义及作用

在开发过程中突然产生了一个疑问&#xff1a;IDEA中 maven deploy的依赖包的版本号,比如 1.0.0-SNAPSHOT是在哪配置的&#xff1f;在远程仓库中的版本和这个有关系吗 &#xff1f; 在 Maven 中&#xff0c;-SNAPSHOT 后缀是用于标识项目版本为快照&#xff08;Snapshot&#xf…...

从技术到艺术:探索大模型提示词工程,给您的AI作品去去味

1. 增加互动性元素 请在文章中增加互动性元素&#xff0c;如提问、调查或互动链接&#xff0c;鼓励读者参与和反馈&#xff0c;提高文章的互动性和读者的参与度。 2. 加强视觉元素的应用 请在文章中适当加入图表、图片和其他视觉元素&#xff0c;增强文章的视觉效果&#xff0…...

OSPF - 1类LSA(Router-LSA)

点击返回LSA对照表 1类LSA是OSPF计算最原始的材料&#xff0c;他会泛洪发给所有的路由器 LSA是包含在LSU中的&#xff0c;一条LSU能够携带多条LSA options位所有LSA都会有&#xff0c;用于标记起源于什么类型的区域&#xff0c;具体查看文章【邻居建立】 flags位是一类LSA特…...

HTTP 协议中,GET、PUT、POST、DELETE、OPTIONS 和 PATCH 区别

在 HTTP 协议中&#xff0c;GET、PUT、POST、DELETE、OPTIONS 和 PATCH 是常见的请求方法&#xff08;HTTP Methods&#xff09;&#xff0c;用于定义客户端与服务器之间的交互方式。每种方法都有特定的语义和用途。以下是它们的详细解释&#xff1a; 1. GET 用途: 用于从服务…...

黄仁勋演讲总结(2种显卡,1个开源大模型,1个数据采集平台)

研发算力显卡RTX50系列&#xff0c;PC端显卡GB10&#xff0c;开源大模型Cosmos&#xff08;用于机器人和自动驾驶&#xff09;&#xff0c; Isaac GR00T&#xff08;人形机器人的数据采集平台&#xff09;。 新一代 RTX 50 系列显卡 RTX 50 系列 GPU&#xff0c;相对之前系列&a…...

支持向量机算法(一):像讲故事一样讲明白它的原理及实现奥秘

1、支持向量机算法介绍 支持向量机&#xff08;Support Vector Machine&#xff0c;SVM&#xff09;是一种基于统计学习理论的模式识别方法&#xff0c; 属于有监督学习模型&#xff0c;主要用于解决数据分类问题。SVM将每个样本数据表示为空间中的点&#xff0c;使不同类别的…...

掌握RabbitMQ:全面知识点汇总与实践指南

前言 RabbitMQ 是基于 AMQP 高级消息队列协议的消息队列技术。 特点&#xff1a;它通过发布/订阅模型&#xff0c;实现了服务间的高度解耦。因为消费者不需要确保提供者的存在。 作用&#xff1a;服务间异步通信&#xff1b;顺序消费&#xff1b;定时任务&#xff1b;请求削…...

Ansys Discovery 优化模式:掌握网格划分方法

本篇博客文章介绍了 Ansys Discovery 中高级 CFD 仿真的 Refine 模式下可用的网格划分方法。上一篇文章讨论了 Explore 模式中可用的网格划分技术。 Refine 模式下的高级网格划分技术 使用 Ansys Discovery 时&#xff0c;Refine 模式提供的网格划分技术比 Explore 模式多。这…...

CentOS: RPM安装、YUM安装、编译安装(详细解释+实例分析!!!)

目录 1.什么是RPM 1.1 RPM软件包命名格式 1.2RPM功能 1.3查询已安装的软件&#xff1a;rpm -q 查询已安装软件的信息 1.4 挂载&#xff1a;使用硬件&#xff08;光驱 硬盘 u盘等&#xff09;的方法&#xff08;重点&#xff01;&#xff01;&#xff01;&#xff09; 1…...

(转)rabbitmq怎么保证消息不丢失?

RabbitMQ 可以通过以下多种机制来保证消息不丢失&#xff1a; 生产阶段 - 持久化队列和交换器&#xff1a; - 在声明队列和交换器时&#xff0c;将 durable 参数设置为 true &#xff0c;确保它们是持久化的。这样&#xff0c;即使 RabbitMQ 节点重新启动&#xff0c;队列和交…...

List ---- 模拟实现LIST功能的发现

目录 listlist概念 list 中的迭代器list迭代器知识const迭代器写法list访问自定义类型 附录代码 list list概念 list是可以在常数范围内在任意位置进行插入和删除的序列式容器&#xff0c;并且该容器可以前后双向迭代。list的底层是双向链表结构&#xff0c;双向链表中每个元素…...

电力场景输电线覆冰分割数据集labelme格式1227张2类别

数据集格式&#xff1a;labelme格式(不包含mask文件&#xff0c;仅仅包含jpg图片和对应的json文件) 图片数量(jpg文件个数)&#xff1a;1227 标注数量(json文件个数)&#xff1a;1227 标注类别数&#xff1a;2 标注类别名称:["ice","powerline"] 每个…...

springboot 日志实现

日志 日志框架可以分为 日志门面&#xff08;Facade&#xff09; 和 日志实现&#xff08;Implementation&#xff09;&#xff0c;Spring Boot 使用了 SLF4J 作为日志门面&#xff0c;Logback 或 Log4j2 作为日志实现。 日志门面以及日志实现 日志门面 日志门面&#xff0…...

Ubuntu Server安装谷歌浏览器

背景 服务器上跑爬虫服务器需要安装谷歌浏览器 安装 wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb### sudo apt install ./google-chrome-stable_current_amd64.deb...

毕业项目推荐:基于yolov8/yolov5/yolo11的动物检测识别系统(python+卷积神经网络)

文章目录 概要一、整体资源介绍技术要点功能展示&#xff1a;功能1 支持单张图片识别功能2 支持遍历文件夹识别功能3 支持识别视频文件功能4 支持摄像头识别功能5 支持结果文件导出&#xff08;xls格式&#xff09;功能6 支持切换检测到的目标查看 二、数据集三、算法介绍1. YO…...

计算机网路HTTP、TCP详解

HTTP HTTP基本概念 HTTP&#xff08;超文本传输协议&#xff09;&#xff1a;HTTP是在计算机世界中两点之间传输文字、图片、视频等超文本内容数据的约束与规范。 常见状态码&#xff1a; 2xx&#xff1a;报文被收到&#xff0c;已经在正确处理中。 3xx&#xff1a;重定向…...