Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/183.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
连接到android.googleapis.com/gcm时出现间歇性和连续SSLHandshakeException/_Android_Google Cloud Messaging - Fatal编程技术网

连接到android.googleapis.com/gcm时出现间歇性和连续SSLHandshakeException/

连接到android.googleapis.com/gcm时出现间歇性和连续SSLHandshakeException/,android,google-cloud-messaging,Android,Google Cloud Messaging,在从我们的服务器(SSLHandshakeException)连接到谷歌用于Android推送通知的GCMAPI()时,我们面临一些问题。 从2018年2月28日到3月8日,问题是间歇性的(有时发送推送,否则SSL握手错误)。自2018年3月9日起,该发行持续进行 请参阅下面的日志。想知道颁发的证书是否有任何更改 com.sun.jersey.api.client.clienthandler异常:javax.net.ssl.SSLHandshakeException:sun.security.v

在从我们的服务器(SSLHandshakeException)连接到谷歌用于Android推送通知的GCMAPI()时,我们面临一些问题。 从2018年2月28日到3月8日,问题是间歇性的(有时发送推送,否则SSL握手错误)。自2018年3月9日起,该发行持续进行

请参阅下面的日志。想知道颁发的证书是否有任何更改

com.sun.jersey.api.client.clienthandler异常:javax.net.ssl.SSLHandshakeException:sun.security.validator.validator异常:PKIX路径生成失败:sun.security.provider.certpath.SunCertPathBuilderException:找不到请求目标的有效认证路径 位于com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle(URLConnectionClientHandler.java:151)


我看到了相同的问题和相同的SSL错误。关于这方面还有什么讨论吗?

我不完全了解细节,但当我更新推送提供商/服务器“外部服务证书”并在下面添加证书时。。我的推动又开始起作用了。因此,尽管我2年前安装的Equifax证书直到几周前才开始工作,但GCM服务器上发生了一些变化,该证书不再有效。其到期日为2018年8月,即将到期,但应在该日期之前到期

我注意到新的证书是SHA256,而原来的证书是SHA1,所以这可能是一个必要的安全升级。我的推送内容提供商是分布式的,而不是在一个容易更新证书的位置,这让我有点不舒服:(

解决我的问题的证书是:

-----开始证书----- MIIEXDCCA0SGAWIBAGINAEOPMBZ8CGY4P5PTHANBGKQHKIG9W0BAQSFADBMMSAW HGYDVQLEXDHBG9IYWXTAWDUIfJVB3QGQ0EGLSBSMJETMBEGA1ECHMKR2XVYMFS U2LNBJETMBEGA1UEXMKR2XVYMFSU2LNBJAEFW0xNZA2MTUWMDAWDJAFW0YMTEY MTUWMDAWNDJAMFQXCZAJBGNVBaytalVTMR4WHAYDVQKEXVHB29NBGUGVHJ1C3QG U2VYDMLJZXMXJTAJBGNVB2DSSBJBNRLCM5LDCBBDXROB3JPDHKGRZMW GGEIMA0GCSQGSIB3DQEBAQAA4IBDWAWGGEKAOIBAQDKUKVQHV/OJGUA2NIANVW XQ5IWi01CXZaz6TIHLGp/lOJ+600/4HBN7VN6AAB3DVZDQOTS7G5PH0RJNNOFAK 71G4nzKMfHCGUksW/mona+Y2emJQ2N+AICWJKETPRSIGUPB6AAHH8HB2XO3H9 RUk2T0HNouB2VzxoMXlkyW7XUR5mw6JkLHnA52XDVoRTWkNty5oCINLvGmnRsJ1z ouAqYGVQMc/7sy+/EYhALrVJEA8KbtyX+r8snwU5C1hUrwaW6MWOARa8qBpNQcWT kaIeoYvy/sGIJEmjR0vFEwHdp1cSaWIr6/4G72N7OqxWFinu7ZyW97eFosQjeaz AGMBAAGJGGEZMIIBLZAOBGNVHQ8BAF8EBAMCAYYWHQYDVR0LBYWFAYKWYBBQUH AWEGCCGAQUFBWMCMBIGA1UDEWB/WQIMAYBAF8CAQAHQYDVR0OBBYEFHFCUFCA Z3Z2SS3CHTCDOH6MFRPLMB8GA1DIWQYMBAAFJVIB1DNHB7AAGBEWBSALD/cGYYu MDUGCCSGAQUFBWebBCWJZALBGGBGEFBQCWayyzahr0CDOVL29JC3UCGTPLMDV B2CVZ3NYMJAYBGNVHR8EKZAPMCEGJAJHIFODHRWOI8VY3JSLNBRAS5 NB29NL2DZ CJIVZ3NYMI5JCMWWPWYDVR0GBDGWNJA0BGZNGQWBAGIWKJAOBGGRBGEFBQCARYC aHR0cHM6Ly9wa2kuZ29vZy9yZXBvc2l0b3J5LzANBgkqhkiG9w0BAQsFAAOCAQEA HLEJLURT7BVS26GYAZ8SO81TRUIS7O45SKDUMAGE1NxHg1P2CNMSXBwSOICt2E ux9LSD+PAj2LIYRFHW31/6xoic1k4tbWXkDCjir37xTTNqRAMPUyFRWSdvt+nlPq wnb8Oa2I/maSJukcxDjNSfpDh/Bd1lZNgdd/8cLdsE3+WYPUFJ9UXO1QPNH9ZBU FIwsIONGl1p3A8CgxkqI/UAIH3JAGOQCPCDACIZKBAR9UYQ1X4K2VG5APROUZVY 7a8IVk6wuy6pm+T7HT4LY8IBS5FEZLFLSW8NWSVZ9SBK2VQN1N0PIMN5XA6NZV c7o835DLAFshEWfC7TIe3g== -----结束证书-----

我通过运行这个openssl cmd获得了它,它是该链中的第二个。该CAfile parm可能不需要,因为我没有该文件,并且有投诉,但仍然显示了所需的证书链


openssl s_client-connect gcm http.googleapis.com:443/gcm/send-debug-showcerts-CAfile trust_2048_ca.cer

问题是由于GeoTrust到GoogleTrust迁移了googleapis.com的SSL证书。当我们从URL导入新证书并将其添加到服务器的信任存储时,问题得到了解决。

Kari-这就是我所说的我知道了。谢谢你的回复。但是你列出的URL给出了404。如果你有正确的URL,你能再次检查并更新吗。

你没有提供日志,你提供了一条错误消息。所以不是IT服务。错误消息非常清楚,它找不到有效的证书。问题是,到android设备的GCM推送通知正在工作g完全之前。检查了现有证书的有效性,有效期至2022年。请考虑使用注释部分
添加注释
,了解后续问题或编辑帖子。请避免将这些添加到
帖子答案
是,即使链接显示404,您仍然可以使用从浏览器中删除googleapis的相同url。