iOS Push证书问题解决方案

最近由于某某三方推送到达率不够,公司要求接入原生Apple Push。在接入的时候发现一些问题,做一个总结。废话不多说,进入正题:

1、用openssl s_clinet -connect gateway.sandbox.push.apple.com:2195 -cert **.pem -key ***pem  报错,提示unable to load client certificate private key file。这个可以试下以下两种方式解决。第一:在本地钥匙串里面导出文件的时候加上密码。第二:上述命令后面少了-key ***.pem这个

2、还有一个用openssl s_clinet -connect gateway.sandbox.push.apple.com:2195 -cert **.pem -key ***pem报错,提示证书无法被信任。解决方法:从apple developer--all--Apple Push Services/APNs Development iOS上下载push证书,后缀是.cer。然后用命令行生成pem文件,然后在本地钥匙串找到点开箭头,选择下面秘钥导出.p12,再通过命令生成pem,最后进行两个pem合并。

3、自己本地用openssl s_clinet -connect gateway.sandbox.push.apple.com:2195 -cert **.pem -key ***pem验证成功,但是PHP一直报错,这个得看下PHP那边的openssl版本和自己生成证书时的openssl版本差别大不大。这个得让PHP升级他的openssl版本。

以上是做项目中遇到的一些问题,希望有所帮助!

你可能感兴趣的:(iOS Push证书问题解决方案)