苹果推送通知服务(Apple Push Notification Service)

2019-07-19 17:15发布

我试图用本地MAC机上运行,​​但去了以下错误

Warning: stream_socket_client() [function.stream-socket-client]: Unable to set private key file `/Applications/XAMPP/xamppfiles/htdocs/apns/apns-dev.pem’ in /Applications/XAMPP/xamppfiles/htdocs/apns/apns.php on line 9

Warning: stream_socket_client() [function.stream-socket-client]: failed to create an SSL handle in /Applications/XAMPP/xamppfiles/htdocs/apns/apns.php on line 9

Warning: stream_socket_client() [function.stream-socket-client]: Failed to enable crypto in /Applications/XAMPP/xamppfiles/htdocs/apns/apns.php on line 9

Warning: stream_socket_client() [function.stream-socket-client]: unable to connect to ssl://gateway.sandbox.push.apple.com:2195 (Unknown error) in /Applications/XAMPP/xamppfiles/htdocs/apns/apns.php on line 9

Warning: socket_close() expects parameter 1 to be resource, boolean given in /Applications/XAMPP/xamppfiles/htdocs/apns/apns.php on line 11

Warning: fclose() expects parameter 1 to be resource, boolean given in /Applications/XAMPP/xamppfiles/htdocs/apns/apns.php on line 12

我PEM认证从其他机器生成的,

因此,我完全糊涂了什么我现在要做的。

请让我知道什么,我需要做的,在本地主机运行

Answer 1:

我认为你可能已经导出的证书,但不能从.CER私钥文件,苹果公司供应。

从markbates这些指令可助阵:

一旦你有苹果证书为您的应用程序,导出密钥和苹果证书作为P12文件。 下面是关于如何做一个快速的演练:

  1. 单击披露旁边的箭头,在钥匙串访问您的证书,并选择证书和密钥。
  2. 右键单击并选择Export 2 items…
  3. 从下拉的P12格式下来并将其命名为cert.p12

现在隐蔽的P12文件到PEM文件:

$ openssl pkcs12 -in cert.p12 -out apple_push_notification_production.pem -nodes -clcerts


文章来源: Apple Push Notification Service