如何使用『Nginx』配置后端『HTTPS』协议访问
前言
本篇博客主要讲解如何使用 Nginx 部署后端应用接口 SSL 证书,从而实现 HTTPS 协议访问接口(本文使用公网 IP 部署,读者可以自行替换为域名)
申请证书
须知
请在您的云服务平台申请 SSL 证书,一般来说证书期限为一年,到期限需要再次申请
博主这里使用的是阿里云云服务器,阿里云每年可以免费申请 20 个 DigiCert SSL 证书,但是 DigiCert 证书不支持绑定 IP,如果您输入 IP,则会弹出如下错误
Globalsign、GeoTrust、vTrus、CFCA品牌OV单域名证书支持绑定IP,建议您购买Globalsign品牌的证书
这里说明下使用公网 IP 申请证书的情况,我们知道一般来说 SSL 证书只是供域名安装,仅有部分 DV 和 OV 证书是支持 IP 部署的,接下来将要讲解可以使用 IP 部署的免费证书申请步骤
如果是部署【域名】的话可以在自己的云服务厂商下面申请并部署,一般都有免费的额度,对于个人来说足够,比较方便
申请步骤
访问:Free SSL Certificates and SSL Tools - ZeroSSL
然后选择 90 天的证书,一直确定即可,然后按照流程,DNS 验证或是 HTTP 文件验证即可,下面使用 HTTP 文件验证方式作为示例
选择 Download Auth File 并将 Auth File 存放在服务器的 /usr/share/nginx/html/.well-known/pki-validation 文件夹下,令服务器上的 nginx 提供对 Auth File 的HTTP访问的响应
location /.well-known/pki-validation/ {root /usr/share/nginx/html/;}
没有必要一定是上面这个目录,只要保证 nginx 具有该目录的操作权限即可,否则会爆出 403 错误
然后按照官方给出的 Nginx 部署证书文档部署即可:Installing SSL Certificate on NGINX – ZeroSSL
上传所有 SSL 证书文件之后,需要合并 certificate.crt 和 ca_bundle.crt 文件
cat certificate.crt ca_bundle.crt >> certificate_merge.crt
证书配置
现在服务器的 8080 端口已经运行了后端接口,下面我将要部署 SSL 证书到公网 IP 上
配置 nginx.conf
server {listen 443 ssl http2 default_server;listen [::]:443 ssl http2 default_server;server_name _;ssl_certificate "/home/dev/certs/certificate_merge.crt";ssl_certificate_key "/home/dev/certs/private.key";ssl_session_cache shared:SSL:1m;ssl_session_timeout 10m;ssl_ciphers PROFILE=SYSTEM;ssl_prefer_server_ciphers on;# Load configuration files for the default server block.include /etc/nginx/default.d/*.conf;location / {proxy_pass http://localhost: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;client_max_body_size 100m;}}
# 重启 Nginx
systemctl restart nginx.service
证书分类
域名型证书 (DV)
SSL证书是只验证网站域名所有权的简易型(Class 1级)SSL证书,可10分钟快速颁发,能起到加密传输的作用,但无法向用户证明网站的真实身份。
目前市面上的免费证书都是这个类型的,只是提供了对数据的加密,但是对提供证书的个人和机构的身份不做验证。
组织/企业型证书 (OV)
用于验证此域名由特定公司、组织、或者机构所拥有,同时申请的主体身份符合合法注册或者受权威机构承认的实体。
提供加密功能,对申请者做严格的身份审核验证,提供可信身份证明,和DV SSL的区别在于,OV SSL 提供了对个人或者机构的审核,能确认对方的身份,安全性更高。一般为收费证书
增强型证书 (EV)
Extended Validation (EV) 证书是目前最高信任级别的 SSL 证书。证书颁发机构对此的审核极其严苛。增强型证书具有最高级别可信度及安全性,显示带公司名称的绿色地址栏是它的显著特点之一,它可以让访问者更加确信以及更加放心的相信他们所进行交易的网站是真实合法的,从而提升在线交易量。
金融证券、银行、第三方支付、网上商城等,重点强调网站安全、企业可信形象的网站,涉及交易支付、客户隐私信息和账号密码的传输。这部分的验证要求最高,申请费用也是最贵的。
参考文章
无域名,为弹性公网IP申请SSL证书 - 简书 (jianshu.com)
【SSL】OV、DV和EV证书的区别-阿里云开发者社区 (aliyun.com)
如何下载并在服务器上安装SSL证书_数字证书管理服务-阿里云帮助中心 (aliyun.com)
推荐阅读
2022阿里云免费SSL证书申请全过程(图文详解)-阿里云开发者社区 (aliyun.com)
本文由博客一文多发平台 OpenWrite 发布!
相关文章:

如何使用『Nginx』配置后端『HTTPS』协议访问
前言 本篇博客主要讲解如何使用 Nginx 部署后端应用接口 SSL 证书,从而实现 HTTPS 协议访问接口(本文使用公网 IP 部署,读者可以自行替换为域名) 申请证书 须知 请在您的云服务平台申请 SSL 证书,一般来说证书期限…...

Git仓库简介
1、工作区、暂存区、仓库 工作区:电脑里能看到的目录。 暂存区:工作区有一个隐藏目录.git,是Git的版本库,Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区…...
TensorRTC++ | INT8量化
Int8量化步骤 // 这是基本需要的组件 auto builder = make_nvshared(nvinfer1::createInferBuilder(logger)); auto config = make_nvshared(builder->createBuilderConfig())...
VS + qt环境使用QCustomPlot等三方库如何配置
文章目录 前言VS环境下引入第三方类库QCustomPlot方法一:解决办法: C中.dll与.lib文件的生成与使用1. 两种库:2.两种文件的区别 前言 Qt提供了显式和隐式导入第三方库方法,本文只介绍显示导入方法。 一般的第三方提供的库文件包…...

OS 段页结合的实际内存管理
虚拟内存承接段和页,从用户角度,虚拟内存提供段,从硬件角度,虚拟内存把段打散映射到页 先基于段的翻译,再基于页的翻译 p是pcb跟着进程换,64M一个段,set base就是建段表 因为每个进程虚拟地址…...

一种改进多旋翼无人机动态仿真的模块化仿真环境研究(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

02-请解释一下Java的内存模型和happens-before规则?【Java面试题总结】
请解释一下Java的内存模型和happens-before规则? 概念:Java内存模型,简称JMM,是一种定义了多线程程序中内存访问行为的规范。它定义了线程如何与主内存和工作内存进行交互,以及如何保证多线程程序的正确性和可见性。J…...
PVE 8 出现CPU 100% 冻结(卡死)
最近在研究PVE,然后下载官方最新版本系统8.x安装好后出现卡死问题,就连开个软件CPU也能飙到100%,开始我以为是硬件问题可能是资源不够,但是将系统切换回裸机(不用PVE启动)一点问题也没有,后来逐…...

【高效编程技巧】编程菜鸟和编程大佬的差距究竟在哪里?
🎬 鸽芷咕:个人主页 🔥 个人专栏: 《高效编程技巧》《C语言进阶》 ⛺️生活的理想,就是为了理想的生活! 文章目录 📋 前言1.如何写出好的代码?1.2 如何分析一个函数写的怎么样 2. 代码板式的重要性2.1 代码…...

继承【C++】
文章目录 继承的概念继承的定义继承方式和访问限定符继承基类成员访问方式的变化 默认继承方式 基类和派生类对象赋值转换继承中的作用域派生类的默认成员函数继承与友元静态成员菱形继承及菱形虚拟继承继承的方式 菱形虚拟继承菱形虚拟继承原理 继承的概念 继承(inheritance)…...

ORB-SLAM3复现过程中遇到的问题及解决办法
在复现过程中遇到的问题的解决过程 1. 版本检查1.1 Opencv版本的检测1.2 Eigen版本的检测1.3 查看Python版本1.4 其他 2. 编译过程中遇到的问题及解决办法2.1 ./build.sh遇到的问题2.2 ./build_ros.sh遇到的问题 因为环境比较干净,所以遇到的问题相对少一些…...
vue开发桌面exe应用
vue开发桌面exe应用 Electron-vue 参考 Electron-vue搭建vue全家桶Element UI客户端(一) 如何使用Vue.js构建桌面应用程序...
C# 实现PictureBox从随机选择的文件夹内对图像进行随机播放
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System...

腾讯云国际代充-GPU服务器安装驱动教程NVIDIA Tesla
腾讯云国际站GPU 云服务器是基于 GPU 的快速、稳定、弹性的计算服务,主要应用于深度学习训练/推理、图形图像处理以及科学计算等场景。 GPU 云服务器提供和标准腾讯云国际 CVM 云服务器一致的方便快捷的管理方式。 GPU 云服务器通过其强大的快速处理海量数据的计算性…...

【python爬虫】9.带着小饼干登录(cookies)
文章目录 前言项目:发表博客评论post请求 cookies及其用法session及其用法存储cookies读取cookies复习 前言 第1-8关我们学习的是爬虫最为基础的知识,从第9关开始,我们正式打开爬虫的进阶之门,学习爬虫更多的精进知识。 在前面几…...

原神剑冢三层封印怎么解开 原神剑冢三层封印在哪里打
在原神游戏中原神探索剑冢封印并解开三层封印,玩家可以去蒙德城接取一个隐藏任务,这项任务需要玩家去解开剑冢三层封印,才能完成任务。然而,许多玩家可能还不知道如何解开这个封印,今天小编为大家整理了一份详细的攻略…...
Papers with Semi-supervised Learning for Medical Image Segmentation(SSL4MIS)
Papers_with_SSL4MIS CVPR2023 DateCategory标题TitleCodeBlog2023-06半监督医学图像分割用于半监督医学图像分割的伪标签引导对比学习Pseudo-Label Guided Contrastive Learning for Semi-Supervised Medical Image SegmentationLinkLink2023-06半监督图像分割SemiCVT&#…...

c#继承(new base)的使用
概述 C#中的继承是面向对象编程的重要概念之一,它允许一个类(称为子类或派生类)从另一个类(称为父类或基类)继承属性和行为。 继承的主要目的是实现代码重用和层次化的组织。子类可以继承父类的字段、属性、方法和事…...

【办公自动化】使用Python批量处理Excel文件并转为csv文件
🤵♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞Ǵ…...

手机怎么剪视频?分享一些剪辑工具和注意事项
视频剪辑是一种将多个视频片段进行剪切、合并和编辑的技术,它可以帮助我们制作出精彩的视频作品。如今,随着智能手机的普及,我们可以随时随地使用手机进行视频剪辑。本文将为大家介绍一些手机剪辑工具和注意事项,帮助大家更好地进…...

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析
1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具,该工具基于TUN接口实现其功能,利用反向TCP/TLS连接建立一条隐蔽的通信信道,支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式,适应复杂网…...

深度学习在微纳光子学中的应用
深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...

Keil 中设置 STM32 Flash 和 RAM 地址详解
文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...

Python爬虫(一):爬虫伪装
一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...

从零实现STL哈希容器:unordered_map/unordered_set封装详解
本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说,直接开始吧! 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...
Mobile ALOHA全身模仿学习
一、题目 Mobile ALOHA:通过低成本全身远程操作学习双手移动操作 传统模仿学习(Imitation Learning)缺点:聚焦与桌面操作,缺乏通用任务所需的移动性和灵活性 本论文优点:(1)在ALOHA…...

Reasoning over Uncertain Text by Generative Large Language Models
https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829 1. 概述 文本中的不确定性在许多语境中传达,从日常对话到特定领域的文档(例如医学文档)(Heritage 2013;Landmark、Gulbrandsen 和 Svenevei…...

华硕a豆14 Air香氛版,美学与科技的馨香融合
在快节奏的现代生活中,我们渴望一个能激发创想、愉悦感官的工作与生活伙伴,它不仅是冰冷的科技工具,更能触动我们内心深处的细腻情感。正是在这样的期许下,华硕a豆14 Air香氛版翩然而至,它以一种前所未有的方式&#x…...

Linux 内存管理实战精讲:核心原理与面试常考点全解析
Linux 内存管理实战精讲:核心原理与面试常考点全解析 Linux 内核内存管理是系统设计中最复杂但也最核心的模块之一。它不仅支撑着虚拟内存机制、物理内存分配、进程隔离与资源复用,还直接决定系统运行的性能与稳定性。无论你是嵌入式开发者、内核调试工…...