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

如何进行域名购买,获取免费ssl证书,使用springboot绑定ssl证书

前言

小编我将用CSDN记录软件开发求学之路上亲身所得与所学的心得与知识,有兴趣的小伙伴可以关注一下!也许一个人独行,可以走的很快,但是一群人结伴而行,才能走的更远!让我们在成长的道路上互相学习,让我们共同进步!


目录

前言

一、如何进行域名购买

1、阿里云官网购买  阿里云-为了无法计算的价值 (aliyun.com)

 2、可能会遇到域名比价抢手的情况

3、 可以换一个名字,或者一直往下拉,就可以看到你能接受的价格了

4、 加入购物清单,购买成功就直接进入域名控制台(购买时填写信息需要实名认证)

二、获取免费ssl证书

1、进入腾讯云官网 腾讯云 产业智变·云启未来 - 腾讯 (tencent.com)

2、先登录,需要实名认证,登录过后就可以看到下图红框里面的图标了

3、在搜索框里面搜索ssl证书

4、点击产品控制台

5、点击产品控制台 进入到下图页面

6、选择好证书类型,进入以下页面

7、填好信息,域名为在阿里云购买的

8、进入阿里云控制台 

9、在搜索框中搜索云解析DNS

10、进入域名解析,点击解析设置

11、将那个免费获取ssl证书验证里面,添加DNS解析码复制过来,就可以通过验证了

12、点击下载 

12、小编下载的是tomcat  jks,下面讲的是jsk版

三、springboot绑定ssl证书

1、配置443端口步骤

第一步:搜索云服务器ECS

第二步:点击实例 创建实例

第三步:创建免费试用的实例​编辑

第四步:选择配置

第五步:等它运行成功 

第六步: 点击实例进入详情页面

第七步: 点击安全组 去配置规则 

第八步:手动添加443端口

第九步:创建springboot项目

第十步:解压之前下载的证书jks,有如下两个文件,复制进resource资源目录下

第十一步:项目结构

第十二步:创建index.xml页面

第十三步:在application.properties中加入以下代码

第十四步:启动类 SslApplication

第十五步:启动成功

四、jdk自带生成的https

第一步:给jdk所在目录管理员权限

第二步:找到jdk的bin目录

第三步:进入命令行cmd

第四步:路径为bin下

第五步:输入以下代码

第六步: 当你完成以下步骤没有报错,或者被拒绝即为生成成功

第七步:且出现keystore.p12

第八步:在application.properties中加入以下代码

第九步:把之前的ssl证书的配置注释掉,启动类中的重定向和@value也注释掉,就留一个main方法

第十步:运行成功


一、如何进行域名购买

1、阿里云官网购买  阿里云-为了无法计算的价值 (aliyun.com)

 2、可能会遇到域名比价抢手的情况

3、 可以换一个名字,或者一直往下拉,就可以看到你能接受的价格了

4、 加入购物清单,购买成功就直接进入域名控制台(购买时填写信息需要实名认证)

二、获取免费ssl证书

1、进入腾讯云官网 腾讯云 产业智变·云启未来 - 腾讯 (tencent.com)

2、先登录,需要实名认证,登录过后就可以看到下图红框里面的图标了

3、在搜索框里面搜索ssl证书

4、点击产品控制台

5、点击产品控制台 进入到下图页面


6、选择好证书类型,进入以下页面

7、填好信息,域名为在阿里云购买的

 验证域名的时候需要去阿里云的域名下添加一条解析记录(注意:你这里需要点击手动添加一条DNS解析

因为小编已经申请了免费的ssl证书,所以这里就不演示了。直接看如何在阿里云添加解析记录进行验证

8、进入阿里云控制台 

9、在搜索框中搜索云解析DNS

10、进入域名解析,点击解析设置

(注意:你的解析设置可能没有在这里出现,需要自己在更多哪里找一下) 

11、将那个免费获取ssl证书验证里面,添加DNS解析码复制过来,就可以通过验证了

12、点击下载 

12、小编下载的是tomcat  jks,下面讲的是jsk版

 完成上述步骤就可以获取免费的ssl证书了

三、springboot绑定ssl证书

1、配置443端口步骤

第一步:搜索云服务器ECS

第二步:点击实例 创建实例

 第三步:创建免费试用的实例

第四步:选择配置

 

第五步:等它运行成功 

第六步: 点击实例进入详情页面

第七步: 点击安全组 去配置规则

 第八步:手动添加443端口

第九步:创建springboot项目

 

第十步:解压之前下载的证书jks,有如下两个文件,复制进resource资源目录下

 第十一步:项目结构

第十二步:创建index.xml页面

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<h1>你好</h1>
</body>
</html>

第十三步:在application.properties中加入以下代码

# ssl配置
# https加密端口号 443
# 服务器运行端口
server.port=443
# http 监听端口,用于重定向到 https 端口
server.port.http=80
# SSL证书路径 一定要加上classpath,证书名只能有一个后缀,否则找不到不到文件,如:name.cn.jks 则找不到
server.ssl.key-store=classpath:证书名字.jks
# SSL证书密码
server.ssl.key-store-password=证书密码
# 证书类型
server.ssl.key-store-type=JKS

 第十四步:启动类 SslApplication

package com.lyn.ssl;import org.apache.catalina.Context;
import org.apache.catalina.connector.Connector;
import org.apache.coyote.http11.Http11NioProtocol;
import org.apache.tomcat.util.descriptor.web.SecurityCollection;
import org.apache.tomcat.util.descriptor.web.SecurityConstraint;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory;
import org.springframework.context.annotation.Bean;@SpringBootApplication
public class SslApplication {// http 请求端口,线上配置为 80@Value("${server.port.http}")private int serverPortHttp;// 服务器运行端口,等同于 HTTPS 请求端口,线上 443@Value("${server.port}")private int serverPortHttps;public static void main(String[] args) {SpringApplication.run(SslApplication.class, args);}/*** http重定向到https*/@Beanpublic TomcatServletWebServerFactory servletContainer() {TomcatServletWebServerFactory tomcat;tomcat = new TomcatServletWebServerFactory() {@Overrideprotected void postProcessContext(Context context) {SecurityConstraint constraint = new SecurityConstraint();constraint.setUserConstraint("CONFIDENTIAL");SecurityCollection collection = new SecurityCollection();collection.addPattern("/*");constraint.addCollection(collection);context.addConstraint(constraint);}};tomcat.addAdditionalTomcatConnectors(httpConnector());return tomcat;}@Beanpublic Connector httpConnector() {Connector connector = new Connector(Http11NioProtocol.class.getName());connector.setScheme("http");//Connector监听的http的端口号connector.setPort(serverPortHttp);connector.setSecure(false);//监听到http的端口号后转向到的https的端口号connector.setRedirectPort(serverPortHttps);return connector;}}

第十五步:启动成功

四、jdk自带生成的https

第一步:给jdk所在目录管理员权限

(注意:不给管理员权限可能会报错)

 

 

第二步:找到jdk的bin目录

第三步:进入命令行cmd

 

第四步:路径为bin下

 第五步:输入以下代码

keytool -genkey -alias tomcat -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650

第六步: 当你完成以下步骤没有报错,或者被拒绝即为生成成功

注意:密码可能是隐形的,所以最好要记住敲了什么密码

第七步:且出现keystore.p12

注意:如果没有p12可能是将后缀名隐藏了

 第八步:在application.properties中加入以下代码

# jdk自带的https
# 比如 D:/Program Files/Java/jdk1.8.0_231/bin/keystore.p12
server.ssl.key-store=你的jdk路径写到bin/keystore.p12
server.ssl.key-store-password=123456
server.ssl.keyStoreType=PKCS12

第九步:把之前的ssl证书的配置注释掉,启动类中的重定向和@value也注释掉,就留一个main方法

第十步:运行成功

 以上就是小编所要讲的全部内容,希望各位大佬多多指教

相关文章:

如何进行域名购买,获取免费ssl证书,使用springboot绑定ssl证书

前言 小编我将用CSDN记录软件开发求学之路上亲身所得与所学的心得与知识&#xff0c;有兴趣的小伙伴可以关注一下&#xff01;也许一个人独行&#xff0c;可以走的很快&#xff0c;但是一群人结伴而行&#xff0c;才能走的更远&#xff01;让我们在成长的道路上互相学习&#…...

LabVIEW网络服务安全2

LabVIEW网络服务安全2在客户端应用程序中创建签名对请求进行签名要求您具有能够从客户端的编程语言调用的MD5摘要算法以及SHA256加密摘要算法的实现。这两种算法通常都可用于大多数平台。还需要&#xff1a;1. 要使用的HTTP方法的字符串&#xff08;“GET”、“POST”、“PUT”…...

java动态代理

目录儿一、代理模式的作用二、实现代理的方式三、动态代理的实现3.1 jdk动态代理3.2 cglib动态代理一、代理模式的作用 功能增强: 基于某个功能&#xff0c;再增加一些功能。 &#xff08;比如目标类只负责核心功能&#xff0c;其他附属功能通过代理类完成。代理类的方法名与目…...

Python 简单可变、复杂可变、简单不可变、复杂不可变类型的copy、deepcopy的行为

copy模块&#xff1a;copy&#xff1a;浅拷贝deepcopy&#xff1a;深拷贝简单可变类型、复杂可变的copy()、deepcopy()&#xff1a;简单不可变、复杂不可变类型的copy()、deepcopy()&#xff1a;结论&#xff1a;对于简单类型的可变类型copy是深拷贝&#xff0c;改变了该拷贝变…...

QML Item

在QML中所有的可视项目都继承自Item&#xff0c;虽然Item本身没有可视化的外观&#xff0c;但它定义了可视化项目的所有属性。 Item可以作为容器使用&#xff1a; Item{Rectangle{id:retc}Rectangle{id:retc1}Rectangle{id:retc2}Rectangle{id:retc3}} item拥有children属性…...

使用xca工具生成自签证书

本文使用 xca 生成自签证书。 概述 之前使用 openssl 生成证书&#xff0c;在 golang 中测试&#xff0c;发现客户端连接失败&#xff0c;经查发现是Subject Alternative Name不支持导致的。因虚拟机 openssl 版本较低&#xff0c;有个功能无法实现&#xff0c;且升级麻烦&…...

Unity IOS 通过命令行导出IPA

新建一个文件然后输入如下内容 #!/usr/bin/env sh /Applications/Unity/Hub/Editor/2020.1.5f1c1/Unity.app/Contents/MacOS/Unity -quit -batchmode -projectPath /Users/zyt/Test -executeMethod Test.BuildEditor.BuildApp cd /Users/zyt/Test/Xcode/unity-xcode xcodebuil…...

「架构」全链路异步模式

总结自尼恩的全链路异步&#xff1a;网关纯异步化网关层的特点&#xff1a;不需要访问业务数据库只做协议转换和流量转发特点是 IO 密集型&#xff0c;特别适合纯异步的架构&#xff0c;可以极大的节省资源。如何进行网关异步化&#xff1f;使用高性能的通信框架Netty&#xff…...

CleanMyMac4.20最新版新增功能及电脑清理垃圾使用教程

CleanMyMac4.20作为知名的Mac清理工具&#xff0c;仅需一键即可快速而安全地清理系统垃圾&#xff0c;释放磁盘空间&#xff0c;因此一直深受Mac用户的喜爱。在不断更新的版本中&#xff0c;CleanMyMac已经不仅仅满足于只做简单的Mac清理工具&#xff0c;而是为Mac用户提供更多…...

Vue2的tsx开发入门完全指南

本篇文章尽量不遗漏重要环节&#xff0c;本着真正分享的心态&#xff0c;不做标题党 下面进入正题&#xff1a; 由于现在vue的官方脚手架已经非常完善我们就不单独配置webpack了&#xff0c;节省大量的时间成本。 首先使用vue/cli创建一个vue模版项目&#xff08;记得是vue/…...

GLSL shader学习系列1-Hello World

这是GLSL shader系列第一篇文章&#xff0c;本文学习目标&#xff1a; 安装编辑工具编写hello world程序 安装插件 我使用VSCode编写shader代码&#xff0c;在VSCode上有两个好用的插件需要先装一下&#xff1a; Shader languages support for VS Code glsl-canvas&#xf…...

Codeforces Round #851 (Div. 2)(A~D)

A. One and Two给出一个数组&#xff0c;该数组仅由1和2组成&#xff0c;问是否有最小的k使得k位置的前缀积和后缀积相等。思路&#xff1a;计算2个数的前缀和即可&#xff0c;遍历判断。AC Code&#xff1a;#include <bits/stdc.h>typedef long long ll; const int N 1…...

内存保护_1:Tricore芯片MPU模块介绍

上一篇 | 返回主目录 | 下一篇 内存保护_1&#xff1a;Tricore芯片MPU模块介绍1 何为MPU2 MPU相关的硬件子系统2.1 基于地址范围保护逻辑说明2.1.1 地址范围寄存器2.1.2 读、写、执行权限寄存器2.1.3 保护集设置位2.1.4 内存保护功能使能位2.1.5 核的内存保护范围获取说明2.1.6…...

Vue3 -- PDF展示、添加签名(带笔锋)、导出

文章目录笔锋签名方案一实现要点实现过程组件引用页面元素添加引用实现代码效果展示缺点方案二修改页面元素替换引用修改代码效果展示完整代码地址实现功能的时候采用了两个方案&#xff0c;主要是第一个方案最后的实现效果并不太理想&#xff0c;但实现起来比较简单&#xff0…...

行测-判断推理-图形推理-样式规律-属性规律-曲直性

左边的图全是由曲线构成的选C1 3 5全是由曲线构成的2 4 6全是由直线构成的第三行的图形有曲有直选A1 3 5有曲有直2 4 6全是直线选D图形有曲有直&#xff0c;排除B D外曲内直->内曲外直->外曲内直->内曲外直->外曲内直->内曲外直所以问号出的图形应该是内曲外直选…...

idea集成Alibaba Cloud Toolkit插件

idea集成Alibaba Cloud Toolkit插件 ​ 使用该插件主要是简化打包、上传、启动服务的相关操作。 ​ 很早之前的方式是使用开发工具&#xff08;eclipse,idea&#xff09;&#xff0c;使用maven命令完成项目打包&#xff08;这里指jar&#xff09;&#xff0c;然后通过shell工…...

Win11 文件夹打开慢或卡顿解决方案

问题 目前是 2023/2/27, 我的 Win11 系统点开一个文件夹要等待 2-3 秒才能加载出来, 使用体验极差。网上查阅大量资料, 有些人在系统更新后这个情况就消失了, 但是我这一直存在, 系统也是当前的最新版, 没有修复。 目前得出的结论是, 因为 Win11 的工具栏占用了过多的资源, 需…...

【PostgreSQL的idle in transaction连接状态】

在平时查询pg_stat_activity这个视图的时候&#xff0c;每一行包含了一个进程的相关信息&#xff0c;包含当前正在执行的SQL&#xff0c;或者会话的状态等等&#xff0c;state字段表示当前进程的状态。在PostgreSQL数据库里&#xff0c;其实代码里总共定义了7种BackendState&am…...

cityengine自定义纹理库资源

背景 cityengine虽然可以将shp生成带纹理的三维模型,但是纹理不一定满足我们的要求,这时候我们就想用我们自己制作的纹理 粗略了解规则文件 了解Building_From_Footprint.cga这个规则文件,具体文件位置默认在 “C:\Users[电脑用户名:如Administrator]\Documents\CityEng…...

taobao.top.secret.bill.detail( 服务商的商家解密账单详情查询 )

&#xffe5;免费必须用户授权 服务商的商家解密账单详情查询&#xff0c;仅对90天内的账单提供SLA保障。 公共参数 请求地址: HTTP地址 http://gw.api.taobao.com/router/rest 公共请求参数: 公共响应参数: 请求参数 响应参数 点击获取key和secret 请求示例 TaobaoClient…...

微信小程序之bind和catch

这两个呢&#xff0c;都是绑定事件用的&#xff0c;具体使用有些小区别。 官方文档&#xff1a; 事件冒泡处理不同 bind&#xff1a;绑定的事件会向上冒泡&#xff0c;即触发当前组件的事件后&#xff0c;还会继续触发父组件的相同事件。例如&#xff0c;有一个子视图绑定了b…...

脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)

一、数据处理与分析实战 &#xff08;一&#xff09;实时滤波与参数调整 基础滤波操作 60Hz 工频滤波&#xff1a;勾选界面右侧 “60Hz” 复选框&#xff0c;可有效抑制电网干扰&#xff08;适用于北美地区&#xff0c;欧洲用户可调整为 50Hz&#xff09;。 平滑处理&…...

Cesium1.95中高性能加载1500个点

一、基本方式&#xff1a; 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...

佰力博科技与您探讨热释电测量的几种方法

热释电的测量主要涉及热释电系数的测定&#xff0c;这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中&#xff0c;积分电荷法最为常用&#xff0c;其原理是通过测量在电容器上积累的热释电电荷&#xff0c;从而确定热释电系数…...

在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)

考察一般的三次多项式&#xff0c;以r为参数&#xff1a; p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]&#xff1b; 此多项式的根为&#xff1a; 尽管看起来这个多项式是特殊的&#xff0c;其实一般的三次多项式都是可以通过线性变换化为这个形式…...

十九、【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建

【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建 前言准备工作第一部分:回顾 Django 内置的 `User` 模型第二部分:设计并创建 `Role` 和 `UserProfile` 模型第三部分:创建 Serializers第四部分:创建 ViewSets第五部分:注册 API 路由第六部分:后端初步测…...

FFmpeg avformat_open_input函数分析

函数内部的总体流程如下&#xff1a; avformat_open_input 精简后的代码如下&#xff1a; int avformat_open_input(AVFormatContext **ps, const char *filename,ff_const59 AVInputFormat *fmt, AVDictionary **options) {AVFormatContext *s *ps;int i, ret 0;AVDictio…...

PH热榜 | 2025-06-08

1. Thiings 标语&#xff1a;一套超过1900个免费AI生成的3D图标集合 介绍&#xff1a;Thiings是一个不断扩展的免费AI生成3D图标库&#xff0c;目前已有超过1900个图标。你可以按照主题浏览&#xff0c;生成自己的图标&#xff0c;或者下载整个图标集。所有图标都可以在个人或…...

32位寻址与64位寻址

32位寻址与64位寻址 32位寻址是什么&#xff1f; 32位寻址是指计算机的CPU、内存或总线系统使用32位二进制数来标识和访问内存中的存储单元&#xff08;地址&#xff09;&#xff0c;其核心含义与能力如下&#xff1a; 1. 核心定义 地址位宽&#xff1a;CPU或内存控制器用32位…...

Cursor AI 账号纯净度维护与高效注册指南

Cursor AI 账号纯净度维护与高效注册指南&#xff1a;解决限制问题的实战方案 风车无限免费邮箱系统网页端使用说明|快速获取邮箱|cursor|windsurf|augment 问题背景 在成功解决 Cursor 环境配置问题后&#xff0c;许多开发者仍面临账号纯净度不足导致的限制问题。无论使用 16…...