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

前言

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

实现步骤

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

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

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

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

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同一目录下

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文件,内容如下:

FROMjava:8-alpine
ARGJAR_FILECOPY 你jar包的名称.jar app.jarENTRYPOINT ["java","-jar","/app.jar"]
复制代码

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

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_STORE,SERVER_SSL_KEY_STORE_PASSWORD,SERVER_SSL_KEY_ALIAS都要改成你自己的配置

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

4.测试

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

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

5.服务器域名配置

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

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

END

  • 恭喜你,看完这两篇文章,应该就能学会免费建立https连接,和前后端部署微信小程序,并进行联调了

  • 希望这篇文章可以帮助到有需要的小伙伴们,有问题可以评论或私信我呀🤞🤞

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值