问题: 我无法访问APNS服务器。我收到110连接超时错误。
我的情况:
我使用一个非常简单的PHP来测试。这是我的代码:
$ctx = stream_context_create();
stream_context_set_option($ctx, 'ssl', 'local_cert', 'apn.pem');
stream_context_set_option($ctx, 'ssl', 'passphrase', 'aaa');
$fp = stream_socket_client("ssl://gateway.sandbox.push.apple.com:2195", $err,
$errstr,60,STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT,$ctx);
if ($fp)
echo ('aa');
else
echo ($err.$errstr);
答案 0 :(得分:10)
我有同样的问题,但是使用Bluehost。就我而言,事实证明Bluehost防火墙没有正确打开。 Bluehost的第一线聊天支持称端口2195& 2196是开放的,问题不在他们身上。为了证明问题在他们一边,我让他们从Bluehost服务器运行以下telnet命令:
telnet gateway.push.apple.com 2195
Trying 17.149.36.246...
Trying 17.149.35.166...
Trying 17.149.35.170...
Trying 17.149.35.177...
... Connection timed out
输出应为:
telnet gateway.push.apple.com 2195
Trying 17.149.36.230...
Connected to gateway.push.apple.com.
Escape character is '^]'.
然后我使用此信息向Bluehost提交了支持票。他们通过正确打开防火墙,在6个小时内解决了这个问题。