Google Pay集成引入pay.js报SSL证书错误 本地Spring+Ubuntu环境配置问询
Ubuntu + Spring 本地环境SSL证书配置方案
第一步:生成自签名SSL证书
Ubuntu系统默认预装openssl工具,直接执行生成命令即可:
- 执行证书生成指令:
openssl req -x509 -newkey rsa:4096 -keyout local.key -out local.crt -sha256 -days 365 -nodes - 执行过程中按提示填写地区、组织等信息,Common Name字段必须填写你之前注册Google Pay时用的本地调试域名,比如localhost或者自定义本地域名如dev.googlepay.test
第二步:适配Spring项目SSL配置
- 先将生成的证书和密钥转换为Spring支持的PKCS12格式,执行指令:
openssl pkcs12 -export -in local.crt -inkey local.key -out keystore.p12 -name localssl - 按提示设置p12文件的访问密码,将生成的
keystore.p12放到项目src/main/resources目录下 - 打开项目配置文件添加SSL配置:
若使用application.properties:
若使用server.port=443 # 可根据你注册Google Pay时用的本地端口调整,比如常用的8443 server.ssl.enabled=true server.ssl.key-store-type=PKCS12 server.ssl.key-store=classpath:keystore.p12 server.ssl.key-store-password=你刚才设置的p12文件密码 server.ssl.key-alias=localsslapplication.yml,对应调整配置层级即可
第三步:本地系统信任自签名证书
避免本地环境访问时提示证书不受信,执行Ubuntu系统信任证书操作:
- 复制证书到系统信任证书目录:
sudo cp local.crt /usr/local/share/ca-certificates/local.crt - 刷新系统证书库:
sudo update-ca-certificates - 若需要在浏览器中调试,额外将
local.crt导入对应浏览器的受信任根证书列表即可
配置验证
启动Spring项目,访问https://<你配置的本地域名>:<端口>确认无SSL风险提示后,再重新引入pay.js测试Google Pay集成逻辑即可。
内容的提问来源于stack exchange,提问作者Muhammed Caylak
相关产品推荐
相关产品推荐

