我必須向iOS設備發送推送通知。我的連接必須通過代理來啓用。我嘗試了一切,但沒有成功。我有一個錯誤110連接超時。如果我只是嘗試連接到Apple推送的地址,它正與cURL一起工作。我不知道問題出在哪裏。代理配置? PHP stream_context錯誤的實現?帶代理的Apple Push和stream_context
這裏是我的代碼:
$ctx = stream_context_create();
stream_context_set_option($ctx, 'ssl', 'local_cert', 'certificate.pem');
stream_context_set_option($ctx, 'ssl', 'passphrase', 'my_passphrase');
stream_context_set_option($ctx, 'ssl', 'verify_peer', false);
stream_context_set_option($ctx, 'http', 'proxy', 'tcp://my-proxy.net:8080');
stream_context_set_option($ctx, 'http', 'request_fulluri', true);
$fp = stream_socket_client('ssl://gateway.sandbox.push.apple.com:2195', $err,$errstr, 60, STREAM_CLIENT_CONNECT, $ctx);
var_dump($fp);
var_dump($err);
var_dump($errstr);
exit;
你有一個想法?
編輯:
是否可以直接鏈接到魷魚?我只是想出了代理與Squid運行。 我也嘗試fopen()
功能,而不是stream_socket_client()
但它似乎不允許ssl協議。
這裏是我的var_dump輸出:布爾(假)INT(110)字符串(20) 「連接超時」
我也有這樣的警告:警告:stream_socket_client():無法連接到SSL: //gateway.sandbox.push.apple.com:2195(連接超時)在/share/www/website/test.php在線22
我們可以看到那些var_dump輸出嗎? –
@EduárdMoldován是的它已完成 – Pierre
任何幫助在這裏:http://stackoverflow.com/questions/6372308/apns-ssl-gateway-sandbox-push-apple-com2195-connection-fails?你有沒有機會阻止端口?或者你自己的路由器? –