Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Spring Boot配置HTTPS,解决微信小程序上线问题

Spring Boot配置HTTPS,解决微信小程序上线问题

作者头像
科技新语
发布于 2023-03-20 08:39:39
发布于 2023-03-20 08:39:39
1K00
代码可运行
举报
运行总次数:0
代码可运行

前言

由于微信小程序在体验版和上线版本,需要用https连接,所以你需要申请一个域名,并为这个域名申请证书。怎么利用acme.sh免费申请证书在上篇文章有提到利用acme.sh免费建立https连接,这里就记录一下Spring Boot中配置HTTPS,再利用Docker进行部署。

实现步骤

1.生成PKCS12格式的证书文件

上一篇中acme.sh免费申请证书后会生成两个文件example.com.keyfullchain.cer

  • example.com.key是私钥文件
  • fullchain.cer是包含公钥证书和中间证书链的证书文件

把这两个文件放在同一目录下,并执行一下命令,合并成一个 PKCS12 格式的证书文件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
openssl pkcs12 -export -in fullchain.cer -inkey example.com.key -out your_keystore.p12 -name your_alias
复制代码
  • your_keystore.p12 是你要生成的 PKCS12 格式的证书文件名
  • your_alias 是你的证书别名

然后会让你设置一个密码来保护生成的 PKCS12 格式的证书文件,这个密码要记下来!!!

这时候当前目录下就会生成 your_keystore.p12文件

2.配置application.yml文件

先把证书文件放到application.yml同一目录下

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
server:
  port: 9898
  ssl:
    key-store-type: pkcs12
    key-store: classpath:your_keystore.p12
    key-store-password: xxxxxxx
    key-alias: your_alias
复制代码

3.Docker部署

把打包好的jar包上传到服务器,并把证书文件也放在你服务器上

在jar包目录生成一个Dockerfile文件,内容如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
FROM java:8-alpine
ARG JAR_FILE
COPY 你jar包的名称.jar app.jar
ENTRYPOINT ["java","-jar","/app.jar"]
复制代码

在当前目录下执行构建,并部署

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo docker build -t <镜像名称> .     #记得后面有个点 .

#我将镜像映射到我服务器的9898端口
sudo docker run -d -p 9898:9898 -v /root/your_keystore.p12:/app/your_keystore.p12 -e "SERVER_SSL_KEY_STORE_TYPE=PKCS12" -e "SERVER_SSL_KEY_STORE=classpath:your_keystore.p12" -e "SERVER_SSL_KEY_STORE_PASSWORD=xxxxxx" -e "SERVER_SSL_KEY_ALIAS=your_alias" <镜像名称>
复制代码
  • /root/your_keystore.p12要替换成你证书所在服务器的地址
  • SERVER_SSL_KEY_STORESERVER_SSL_KEY_STORE_PASSWORDSERVER_SSL_KEY_ALIAS都要改成你自己的配置

到这里已经完成所有的部署啦😃😃

4.测试

postman或在网页中测试,输入https://example.com:9898就能看到数据啦

但是对于微信小程序来说还没有可以正常发起连接

5.服务器域名配置

需要到官方的微信小程序后台的 开发管理 -> 开发设置-> 服务器域名配置

将自己的域名配置上去,就完结撒花啦

END

  • 恭喜你,看完这两篇文章,应该就能学会免费建立https连接,和前后端部署微信小程序,并进行联调了
  • 希望这篇文章可以帮助到有需要的小伙伴们,有问题可以评论或私信我呀🤞🤞

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
爽了!免费的SSL,还能自动续期!
兄弟👬🏻,当你手里有不少域名,每个域名又配置子域名,那么ssl将是一笔不小的费用。当然各个云厂商,也都有提供免费的ssl证书,但这里有一个问题,就是基本都不提供免费的泛域名证书(免费20个单域名证书),比如 x.gaga.plus、b.gaga.plus 这就要申请2个域名证书了!并且3个月就过期,一年就折腾这,都能折腾哭😭!那咋办?
小傅哥
2024/04/25
4.6K2
爽了!免费的SSL,还能自动续期!
完美,竟然用一个脚本就把系统升级到https了,且永久免费!
现在很多站长都会考虑将自己的站点从http升级到https,不仅是基于安全的考虑,有的也是因为第三方平台的限制,如谷歌浏览器会将http站点标记为不安全的站点,微信平台要求接入的微信小程序必须使用https等。
IT咸鱼
2025/05/20
370
完美,竟然用一个脚本就把系统升级到https了,且永久免费!
Let's Encrypt免费泛域名SSL证书申请及自动续签
Let's Encrypt: https://letsencrypt.org , 是一个免费的、自动化的、开放的证书颁发机构。截至2018年9月,它的全球SSL证书市场份额已超过50%,得到主流浏览器和厂商的认可与支持。
Cong Min
2019/09/07
21.2K1
用acme.sh自动部署域名证书
目前使用量最大的免费SSL证书就是Let’s Encrypt,自2018-03开始,Let’s Encrypt官方发布上线了免费的SSL泛域名证书,目前通过DNS方式获取比较快,国内可以通过鹅云的DNSPod域名API或者猫云域名API自动签发Let’s Encrypt泛域名证书。因为鹅云使用的就是DNSPod域名,并且鹅云和DNSPod的账号是打通的,可以使用wx直接扫码登录。下文需要对鹅云和DNSPod进行操作,为了简化证书申请过程,需要提前安装acme.sh。acme.sh实现了acme协议,可以从Let’s Encrypt生成免费的证书,自动创建cron任务, 每天零点自动检测所有的证书,如果发现证书快过期了,需要更新,则acme.sh会自动更新证书,安装过程不会污染已有的系统任何功能和文件,所有的修改都限制在安装目录中。
摘繁华
2022/12/05
3.3K0
用acme.sh自动部署域名证书
使用acme.sh申请Let's Encrypt免费的SSL证书
acme.sh 实现了 acme 协议,可以从letsencrypt生成免费的证书。接下来将为大家介绍怎样申请Let's Encrypt通配符证书。
青阳
2021/09/15
6K4
Spring Boot启用HTTPS
默认情况下,Spring Boot应用程序在应用程序启动时使用HTTP的8080端口。可按照以下步骤,在Spring Boot应用程序中配置HTTPS和端口443 -
黑洞代码
2021/09/03
9560
可能是最详细的部署:Docker Registry企业级私有镜像仓库Harbor管理WEB UI
上一篇文章搭建了一个具有基础功能,权限认证、TLS 的私有仓库,但是Docker Registry 作为镜像仓库,连管理界面都没有,甚至连一些运维必备的功能都是缺失的,还有什么 Docker 镜像仓库管理工具呢? 这里有一个简单好用的企业级 Registry 服务器 - Harbor,推荐在生产环境上使用。 Harbor 简介 Harbor是VMware公司开源的企业级Docker Registry项目,其目标是帮助用户迅速搭建一个企业级的Docker registry服务。 它以Docker公司开源的re
程序员鹏磊
2018/02/09
2.5K0
可能是最详细的部署:Docker Registry企业级私有镜像仓库Harbor管理WEB UI
使用 acme.sh 申请 SSL 证书
在申请 ssl 时,大部分平台都会存在或多或少的限制,比如国内平台的 亚洲诚信 ,该平台可以一次性申请双域名有效期为一年的证书,或者短期的通配符证书
阿龙w
2023/10/23
1.9K0
利用 acme.sh 申请 ZeroSSL 泛域名证书的图文教程
熟悉陌涛的都知道,陌涛一直都在使用 acme.sh 作为服务器端申请、部署、续期免费 SSL 证书的主要工具,今天在帮一个站长申请 SSL 证书的时候发现 acme.sh v3.0 开始默认的免费 SSL 证书变更为:ZeroSSL 了,这个 ZeroSSL 其实跟陌涛一直用的 Let's Encrypt 类似,在 2016 年就已经推出,和 Let's Encrypt 一样,证书有效期只有 90 天,支持泛域名 SSL 证书。和 Let's Encrypt 不同的是,ZeroSSL API 没有速率限制,不存在同一 IP 多次申请 SSL 证书被限制的问题,ZeroSSL 还提供了 WEB 界面可在后台管理 SSL 证书,相比 Let's Encrypt 功能更加丰富。
陌涛
2022/05/03
11.7K1
利用 acme.sh 申请 ZeroSSL 泛域名证书的图文教程
正确使用 acme.sh, 让你的网站永久使用 ssl 证书,It's free!
acme.sh 实现了 acme 协议, 可以从 letsencrypt 生成免费的证书.
用户1418987
2023/12/06
11.4K1
正确使用 acme.sh, 让你的网站永久使用 ssl 证书,It's free!
HTTPS之acme.sh申请证书
Let's Encrypt是一个于2015年三季度推出的数字证书认证机构,旨在以自动化流程消除手动创建和安装证书的复杂流程,并推广使万维网服务器的加密连接无所不在,为安全网站提供免费的SSL/TLS证书。 Let's Encrypt由互联网安全研究小组(缩写ISRG)提供服务。主要赞助商包括电子前哨基金会、Mozilla基金会、Akamai以及思科。2015年4月9日,ISRG与Linux基金会宣布合作。 用以实现新的数字证书认证机构的协议被称为自动证书管理环境(ACME)。GitHub上有这一规范的草案,且提案的一个版本已作为一个Internet草案发布。 Let's Encrypt宣称这一过程将十分简单、自动化并且免费
惨绿少年
2018/12/19
4.8K0
使用acme.sh生成免费的SSL证书
acme.sh 实现了 acme 协议, 可以从 letsencrypt 生成免费的证书.
码客说
2021/03/02
5K0
Let's Encrypt 配置 HTTPS 免费泛域名证书
想要使用 HTTPS ,你必须先拥有权威 CA(证书签发机构)签发的证书(对于自签名的证书,浏览器是不认账的)。Let's Encrypt 就是一家权威的 CA 证书签发机构,你可以向他申请免费的证书(一般商业证书的价格比较贵)。
凌虚
2020/07/18
4.1K0
Let's Encrypt 配置 HTTPS 免费泛域名证书
acme从letsencrypt 生成免费通配符/泛域名SSL证书并自动续期
原来的ssl证书都是lnmp一键申请的,后来因为80端口问题,只能从运营商那边申请一年的,但是 都是单域名的没有泛域名的。其实已经知道有服务商早就推出免费的泛域名但是一直没有去了解,习惯真的很可怕,废话不多说  其实官方已经有比较详细的文档 按照官方的直接来就行了
pooky
2020/10/30
9.8K0
acme从letsencrypt 生成免费通配符/泛域名SSL证书并自动续期
Centos7搭建ngrok服务端以及配置客户端
由于学校部分内网与跟外网不通,所以在校园网或者外网的情况下,连接不到内网服务器,看不了内网的网站。但是有时候我会需要在自己宿舍或者家里连接学校的内网服务器,看一下内网网站,一开始想到的是内网服务器搭建ss服务器,然后一想,怎么对外网IP映射端口呢,我又没有路由器权限。想来想去,还是直接用内网穿透的工具吧。
幻影龙王
2021/09/05
4.2K1
Centos7搭建ngrok服务端以及配置客户端
SSL证书自动化-acme实战(Let’s Encrypt)
由于 HTTP 是明文传输,在使用 NextCloud 等服务时不够安全,需要配置 SSL 证书。不想让在被别人浏览的时候,出现莫名的广告[运营商劫持]。
用户10002156
2023/12/13
2.3K0
SSL证书自动化-acme实战(Let’s Encrypt)
TLS 以及自动更新证书: Let's encrypt + acme.sh
Mr. Hsu edited this page on 18 Jun · 24 revisions
OwenZhang
2021/12/08
1.7K0
Docker Registry Server 搭建,配置免费HTTPS证书,及拥有权限认证、TLS 的私有仓库
上一篇文章搭建了一个具有基础功能的私有仓库,这次来搭建一个拥有权限认证、TLS 的私有仓库。 环境准备 系统:Ubuntu 17.04 x64 IP:198.13.48.154 域名:hub.ymq.io,此域名需要dns 解析到198.13.48.154 作为私有仓库地址 本文出现的所有:hub.ymq.io 域名。使用时候请替换成自己的域名 Docker 环境 在部署私有仓库之前,需要在主机上安装Docker。私有仓库是 registry images,并在Docker中运行。 我是用的vultr 的服
程序员鹏磊
2018/02/09
3.9K0
Docker Registry Server 搭建,配置免费HTTPS证书,及拥有权限认证、TLS 的私有仓库
腾讯云DNSPod域名API申请Let’s Encrypt泛域名免费SSL证书教程
Let’s Encrypt是目前使用最为广泛的免费SSL证书,蜗牛789使用的就是此款免费SSL证书,早在2017年7月份起Let’s Encrypt官方就发布将在2018年上线泛域名免费SSL证书。现在终于可以申请Let’s Encrypt的泛域名免费SSL证书。暂时只能通过DNS方式获取,支持的DNS解析有很多,国内可以通过腾讯云的DNSPod.cn域名API和阿里云域名API自动颁发Let’s Encrypt泛域名免费SSL证书。
墨渊
2018/05/11
19.7K6
在Spring Boot中使用HTTPS
在本文中,我们将学习在Spring Boot中使用自签名证书配置SSL(HTTPS),并且要在嵌入式Tomcat上启用Spring Boot应用程序的SSL,我们需要学习以下步骤: 1.创建SSL证书:生成自签名证书,或者使用由受信任的证书颁发机构(CA)颁发的证书。 2.在Spring Boot中启用HTTPS:这可以通过Spring Boot 项目中的一些简单配置来完成。 3. 将HTTP重定向到HTTPS :在某些情况下,最好也能从HTTP访问你的应用,将所有HTTP流量重定向到HTTPS端
lyb-geek
2018/08/16
2.9K0
推荐阅读
相关推荐
爽了!免费的SSL,还能自动续期!
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验