微信小程序免费SSL证书及SpringBoot服务

微信小程序服务端必须支持HTTPS,SSL证书还需要完整。否则,可能会出现微信小程序wx.request电脑端正常,但手机端失败的现象。

1、免费SSL证书

申请的JoySSL免费ssl证书。有效期90天,不知道到期后续签是否还免费?申请下证书,速度还是很快的。
在这里插入图片描述

2、SrpingBoot配置

把IIS证书直接设置到SrpingBoot配置文件中。

server:
  port: 443
  ssl:
    key-store: classpath:abc.pfx
    key-store-password: password
    keyStoreType: PKCS12

用开发工具测试一切正常,但用手机端访问,提示总是失败。
域名已经添加信任和Https,wx.requset请求报错。

request:fail -2:net::ERR_FAILED

3、SSL服务器证书安装检查器

SSL证书安装检查器、在检查自己域名对应服务器后,在证书2有如下警示:
在这里插入图片描述
原因可能是,在IIS目录的证书可能缺少中间证书,导致有错误出现。

  • 网上有补全证书的方法,没有具体尝试。
  • 发现在Ngix目录下的证书是全的,改为把SSL配置到ngix方式。

3、windows版本Nginx添加Https配置

  • 修改nginx.conf文件,把该段代码前面的#号去掉。
  • 分别修改其中的ssl_certificate和ssl_certificate_key配置项为JoySSL所生成的abc.crt和abc.key这两个文件的目录。
  • 并配置server_name为你的域名。
  • 增加转发,转发到自己的普通spingboot项目即可(不需要ssl)。

修改后的该段配置如下:

server {
    
    
    listen       443 ssl;
    server_name  www.xxxxx.com;
 
    ssl_certificate      C://nginx//cert//abc.crt;  # 这个是证书的crt文件所在目录
    ssl_certificate_key  C://nginx//cert//abc.key;  # 这个是证书key文件所在目录
 
    ssl_session_cache    shared:SSL:1m;
    ssl_session_timeout  5m;
 
    ssl_ciphers  HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers  on;
 
    location / {
    
    
      root   html;                  # 这个是指定一个项目所在目录
      index  index.html index.htm;  # 这个是指定首页的文件名
    }
	location ^~ /xxx-api/ {
    
    
		proxy_pass http://127.0.0.1:8060/xxx-api/;
	}
}

4、确认OK

  • 重启后,再进行SSL服务器证书检查,发现没有问题。
  • 小程序手机端访问也正常起来。

猜你喜欢

转载自blog.csdn.net/qgbihc/article/details/124902049
今日推荐