Spring Rest接口部署配置https访问,Spring Rest接口配置SSL证书

文章详细介绍了如何将SpringRest接口设置为HTTPS访问,包括在阿里云注册域名、解析域名、备案、申请和部署SSL证书,以及使用keytool将证书转换为JKS格式并配置到Spring服务中,以满足微信小程序对HTTPS的要求。
摘要由CSDN通过智能技术生成

Spring Rest接口设置https访问

最近小伙伴们在开发微信小程序的时候,可能会有这样一个困扰:访问后台接口操作数据时,发现微信小程序只支持https地址,纯ip地址或http地址无法正常使用。网上搜教程呢也没找到一个系统的解决步骤,本文章会从申请域名、申请SSL证书、部署Spring服务等逐步讲解,主要是做一个笔记使用,希望可以帮助到大家。

本文章以阿里云为样例,其他服务商操作过程也大致相同,此处不做赘述。

域名

域名注册

登录阿里云,在产品-热门产品中找到【域名和网站】标签,也可以直接打开阿里云万网,然后根据自己的喜好与需求输入域名信息,点击查询。
阿里云万网注册
将自己想要的域名加入购物清单,下单购买后即可在阿里云控制台看到自己注册的域名。

域名解析

在此步骤之前需要先申请自己的服务器,拿到服务器的公网IP
打开域名控制台,可在域名列表看到自己刚刚申请的域名,点击域名解析,打开解析操作界面。
域名控制台
需要域名与自己的服务器进行绑定,点击【添加记录】,新弹出页面操作方式如下:

  1. 记录类型
    选择A-将域名指向一个IPV4地址
  2. 主机记录
    根据自己喜好选择不同选项,此处我选择的‘@’,浏览器只需要输入‘域名.后缀’即可访问自己的网站;
    也可选择‘www’,这样就是大家比较熟悉的网站样式‘www.域名.后缀’。
  3. 解析请求来源
    默认即可。
  4. 记录值
    此处填写你的服务器的公网IP地址。
  5. TTL
    默认即可。

填写完信息如下,点击确定按钮,等待解析生效即可。
域名解析
生效后,可以在服务器部署一个简单的网页,然后在浏览器输入自己域名地址,检查域名是否解析成功,如果能正常打开网页,那恭喜你;也可能会出现‘网站未备案’的提示,此时不要慌,这是咱们下一步要做的工作。

网站备案

域名在解析完成之后,如果不进行备案的话,实际是无法使用的,浏览器中输入域名后会有下面这样的提示。
未备案提示
此时我们需要去进行网站的备案,该步骤也是整个流程中耗时最长的一步。
打开阿里云ICP备案,新增备案,按照要求填写自己网站的信息,此处需注意网站名称、网站内容、备注等要按规定填写,不允许出现一些特定的违规词语,否则会审批不通过。
全部填写完成后,等待审批即可,保持手机畅通,期间可能会电话联系进行审批,如无问题全程大概需要7天左右时间。
备案

SSL证书

域名备案完成后,即可申请SSL证书。

打开阿里云数字证书管理服务,在SSL证书找到免费证书页签,点击【立即购买】,在弹出页面选择免费证书,购买20个即可,阿里云每年会有20个免费证书的使用额度,以供测试使用。
免费证书购买
购买完成后,点击【创建证书】按钮,会出现如下数据,再点击【证书申请】按钮,在弹出页签填写相关信息。
创建证书
在证书申请界面,按实填写证书绑定域名(前序步骤备案的域名)、联系人等信息,其余信息保持默认,然后【提交审核】,大约等待10分钟后,证书会审核通过。
证书申请
审核通过后,在免费证书列表即可看到刚刚创建的证书状态为【已签发】,此状态下即可进行证书的部署及下载使用。
证书签发

如果服务器使用的就是阿里云的‘云服务器ECS’,则可直接点击【部署】按钮,选择相关的阿里云资源进行自动化部署,此处不做讲解;如果非阿里云服务器或使用的阿里的‘轻量应用服务器’请看后续操作步骤。

Spring服务配置SSL证书

证书下载

在免费证书列表,已签发证书下点击‘下载’按钮,在弹出证书下载界面,选择‘Tomcat’进行下载。
证书下载
下载的压缩包,解压后会有两个文件,一个pfx格式的证书,一个是证书的密码。
证书压缩包

证书转为JKS格式

使用jdk自带的keytool将证书文件转换为JKS格式。

  • 打开cmd命令提示符
    切换到jdk的bin目录下,或者直接在bin目录的地址栏输入cmd,然后回车。如果忘了jdk的路径,可在环境变量-系统变量中找到JAVA_HOME。
cd D:\software\JAVA\jdk1.8\bin
  • 使用keytool命令
keytool -importkeystore -srckeystore 你的pfx证书路径.pfx -destkeystore 转换后jks名称.jks -srcstoretype PKCS12 -deststoretype JKS

其中,【你的pfx证书路径.pfx】替换成刚解压的pfx证书的绝对路径;【转换后jks名称.jks】替换成你想要生成jks文件的名称。
执行命令后,会让你输入证书密码,在另一个文件中找到密码输入即可。此处需注意,会让你设置jks的密码,建议保持与pfx密码一致,防止证书密码遗忘。
全部操作完成后可在bin目录下找到生成的jks文件。

后台代码修改

  • 复制jks文件到后台工程resources下。
  • 修改application.yml文件:
server:
  port: 443
  ssl:
    key-store: classpath:你的jks名称.jks
    key-store-type: JKS
    # 密码在下载的另一个文件中
    key-store-password: jks密码
  • 修改完成后打包部署到服务器,即可验证https地址是否部署成功。此处需注意由于https的默认端口是443,需要将服务器的443端口打开,否则无法访问成功。
    接口调用成功

此处大家可能会有疑问,正常部署接口服务后,调用地址为‘域名+服务端口+接口地址’,为啥配置完SSL证书后不需要端口即可调用成功,这是因为https的默认访问端口就是443,就像http的默认访问端口是80一样。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值