当前位置: 首页 > 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…...

2023软件测试金三银四常见的软件测试面试题-【抓包和网络协议篇】

八、抓包与网络协议 8.1 抓包工具怎么用 我原来的公司对于抓包这块&#xff0c;在App的测试用得比较多。我们会使用fiddler抓取数据检查结果&#xff0c;定位问题&#xff0c;测试安全&#xff0c;制造弱网环境; 如&#xff1a;抓取数据通过查看请求数据&#xff0c;请求行&…...

vue脚手架多页自动化生成实践

前言 在前端开发过程中&#xff0c;常常面对多种业务场景。到目前为止&#xff0c;前端对于不同场景的处理通常会采用不同的渲染方案来组合处理&#xff0c;常见的渲染方案包括&#xff1a;CSR(Client Side Rendering)、SSR(Server Side Rendering)、SSG(Static Site Generati…...

【SQL语句优化】

SQL语句优化是提高数据库查询性能的重要手段之一&#xff0c;下面是几种常见的SQL语句优化方法和案例&#xff1a; 减少查询的数据量 减少查询的数据量&#xff1a;使用 WHERE 子句和索引来限制检索行数&#xff0c;只检索需要的行&#xff0c;避免检索全部行数据。 例子&am…...

阿里P8:做测试10年我的一些经验分享,希望你们少走弯路

我是在2015年毕业的&#xff0c;当时是读的普通本科&#xff0c;不上不下的专业水平&#xff0c;毕业的时候&#xff0c;恰好遇到了金融危机。校园招聘里阴差阳错的巧合&#xff0c;让我走上了软件测试工程师的道路。 入职第一天&#xff0c;来了个高大上的讲师&#xff0c;记…...

栈在括号匹配中的应用(栈/链栈 纯C实现)

目录 1 问题背景 2 具体思路 3 代码实现 3.1 顺序栈实现 3.2 链栈实现 1 问题背景 栈的括号匹配问题是指在给定一个字符串&#xff08;包含多种括号&#xff09;&#xff0c;判断其中的括号是否能够正确匹配&#xff0c;即每个左括号是否有一个对应的右括号与之匹配&#x…...

C语言Switch语句用法

C switch 语句 一个 switch 语句允许测试一个变量等于多个值时的情况。每个值称为一个 case&#xff0c;且被测试的变量会对每个 switch case 进行检查。 语法 C 语言中 switch 语句的语法&#xff1a; switch(expression){case constant-expression :statement(s);break;…...

Curl编码请求参数,API接口请求示例参数

请求参数请求参数&#xff1a;num_iid610947572360 参数说明&#xff1a;num_iid:1688商品ID sales_data:&sales_data1 获取近30天成交数据 agent:&agent1 获取1688分销代发价格数据请求示例 测试入口 Curl PHP PHPsdk JAVA C# Python-- 请求示例 url 默认请求参数已经…...

【C/C++】类型限定符extern、const、Volatile、register

1、extern&#xff1a; 声明一个变量&#xff0c;extern声明的变量没有建立存储空间。 extern int a ; //变量在定义的时候创建存储空间。 ①当我们在编译器中试图运行以下代码&#xff0c;系统会报错。 错误原因是“无法解析外部符号_a”.系统认为变量a是没有开辟内存空间的…...

day54【代码随想录】二刷数组

文章目录前言一、二分查找&#xff08;力扣724&#xff09;二、移除元素&#xff08;力扣27&#xff09;【双指针】三、有序数组的平方&#xff08;力扣977&#xff09;【双指针】四、合并两个有序数组&#xff08;力扣88&#xff09;五、长度最小的子数组&#xff08;力扣209&…...

哪个品牌蓝牙耳机性价比高?性价比高的平价蓝牙耳机推荐

现如今&#xff0c;随着蓝牙技术的进步&#xff0c;蓝牙耳机在人们日常生活中的便捷性更胜从前。越来越多的蓝牙耳机品牌被大众看见、认可。那么&#xff0c;哪个品牌的蓝牙耳机性价比高&#xff1f;接下来&#xff0c;我给大家推荐几款性价比高的平价蓝牙耳机&#xff0c;一起…...

减少网站跳出率/站长统计官网

一、为什么要挂载windows分区 随着linux越来越普及&#xff0c;很多linux FANS正在或者已经从windows系统过度到linux系统上了。在这个过度时期&#xff0c;大部分FANS在自己的机器上都是至少装了两套系统——windows和linux。这样&#xff0c;问题就出现了&#xff0c;当FANS们…...

用自己的电脑做服务器建网站/关键词推广哪家好

ARM系列之RM 平台安全架构PSA 浅析 1、背景2、PSA安全认证2.1 什么是PSA&#xff1f;2.2 功能性 API 认证2.3 PSA安全认证&#xff08;待完善&#xff09;3、专用的开源安全固件代码1、背景 在互联网飞速发展过程中&#xff0c;安全问题始终贯穿其中。在这场安全保卫战中&…...

北京建设工程二级市场网站/seo联盟

我们学、用.NET的都知道&#xff0c;程序集(Assembly)的一个很大的优点就是它有元数据&#xff0c;可以“自描述”。在我们体验这种优势的同时&#xff0c;我们是否想过什么时候数据库中的信息也是自描述的该多好&#xff1f; 我想Sql Server中有扩展属性&#xff0c;并且Sql S…...

正邦 网站建设/不花钱网站推广

原文&#xff1a;http://coolketang.com/staticDesign/5a97b8c39f5454403c50830f.html1. 本节课将为您详细讲解渐变面板的使用。首先选择文档中的黑色图形。 2. 然后点击工具栏底部的[渐变]图标&#xff0c;给图形填充渐变颜色。渐变是指两个或多个颜色的渐变混合。 3. 接着依次…...

衡水网站制/免费发帖的平台有哪些

1.背景 中文互联网没有真正的以地信遥感的资源内容为导向的网站。 而对于寻找相关地信资源、卫星产品数据的初学者&#xff0c;主要通过以下方式获取数据: 百度直接搜索数据。 通过淘宝、闲鱼购买数据&#xff1b; 转发公众号的推文&#xff0c;获取数据。 而知道各类数据下载…...

无锡网站公司电话/emlog友情链接代码

首先我们来看下hbase 的架构图 1、hbase在Hadoop集群中的物理架构 由图中可以看出&#xff0c;存储模块主要包括了ZooKeeper集群、HMaster、HRegionServer。 ZooKeeper&#xff1a; Hbase是强依赖于ZooKeeper&#xff0c;我们读或写一个表的数据&#xff0c;都会优先访问Zoo…...