事情是这样的,公司给了测试服务器来调试微信支付和退款回调。我看服务器里有之前使用的 1.8的openjdk,心里还暗喜剩了装jdk的功夫(伏笔),一开始都好好的。突然有一次退款就出现了No appropriate protocol (protocol is disabled or cipher suites are inappropr)的问题,本地的环境试了退款也没问题。于是就去微信开放社区根据提供的方案大致分四种:

第一种就是 把 “TLSv1” 给改成null。我试了无果。
在这里插入图片描述

紧接着是第二种:说是 sdk用的是github的 升级成3.9.0 的版本就好使了。
但是我这里不是,方案就果断就果断pass。

再就是第三种:vim /usr/local/jdk/jar/lib/security/java.security
如下图,第一个红框是我改过之后的,第二框是我备份的,无非就是把SSLv3, TLSv1, TLSv1.1删掉就行。可是我这里还是不行。
在这里插入图片描述
再就是第四种:直接更换JDK的,
因为我把本地和测试服务器的java.security 的配置都改成一样的了。那就是jdk的问题,于是我就去看了下openjdk。确实有问题,openjdk的源码是不完整的。于是果断卸载.

因为是通过yum 的方式安装的,所有就要用同样的方式卸载。大家可以参考连接的方式yum方式卸载openjdk -》https://blog.csdn.net/u013641234/article/details/76158026

又去下载了jdk 重新安装:
下载并安装jdk-》https://blog.csdn.net/pdsu161530247/article/details/81582980

安装完还是不行报错,于是就回头参考 方案3 ,就成功了!

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐