微信支付HTTPS服务器证书更换问题 主机centos

版权声明: https://blog.csdn.net/yangshuolll/article/details/79874905

今天在邮箱中看到这样一句话

尊敬的微信支付商户:

因微信支付HTTPS服务器证书的根CA证书将于2018年8月23日到期失效,微信支付计划于2018年5月29日更换服务器证书。
新的服务器证书由权威机构(DigiCert) 签发, 如果你的服务器上没有部署DigiCert的根CA证书,将导致你的下单、退款等功能无法正常使用。请开发人员务必尽快完成证书验证及安装,详细流程可查看商户平台公告。

微信支付团队
2018年3月14日

所以就立刻检查了下自己的服务器是否部署了DigiCert的根CA证书。(一般服务器上都是部署了类似的根证书的。就像装windows自带IE一样,但是以防万一我看是检查下)

检查的方式如下

(1)微信商户找到的自己的mch_id  这个就是商户号 例如mch_id = 1111111

(2) 生成一个不超过32位的随机字符串 nonce_str, 例如nonce_str = 7UNdMuYryxEtLirA

(3)然后去这个网址网址链接, 在XML源串贴上这串xml。在商户key一栏写你在商户平台上设置的商户key。 其他的默认不变

<xml> 

<mch_id>1111111</mch_id> 

<nonce_str>7UNdMuYryxEtLirA</nonce_str> 

</xml>

(4)这样就获得了sign的值

(5)然后在你的centos控制台中写入这个回车就可以了。

echo '<xml><mch_id>1111111</mch_id><nonce_str>7UNdMuYryxEtLirA</nonce_str><sign>4A1CD6111DADC112CE6AFC391C7C4A0F42C6</sign></xml>'|curl -X POST -H 'Content-type:text/xml' -d @- https://apitest.mch.weixin.qq.com/sandboxnew/pay/getsignkey

(6)如果有根证书,结果如下

  <return_code><![CDATA[SUCCESS]]></return_code>
  <return_msg><![CDATA[ok]]></return_msg>


注意:教程里的参数需要时你商户的参数。我只是做一个示例,你直接替换该替换的内容就好了,就三个参数mch_id, nonce_str, sign。 其中sign是仅仅是有mch_id和nonce_str这两个参数加密得到的(限于此沙箱的测试环境)。





猜你喜欢

转载自blog.csdn.net/yangshuolll/article/details/79874905