Tôi đã làm theo hướng dẫn tại How to build an Apple Push Notification provider server (tutorial) trong nỗ lực thiết lập máy chủ thông báo đẩy.Dịch vụ thông báo đẩy của Apple: Phía máy chủ cài đặt chứng chỉ?
Khi tôi cố gắng để kết nối với mã PHP sau
// connect to apns server
$strAPNSUrl = 'ssl://gateway.sandbox.push.apple.com:2195';
$strAPNSCert = 'dev.pem';
// generate stream
$oStreamContext = stream_context_create();
stream_context_set_option($oStreamContext, 'ssl', 'local_cert', $strAPNSCert);
// create the socket connection
$oAPNS = stream_socket_client($strAPNSUrl, $iError, $strError, 2, STREAM_CLIENT_CONNECT, $oStreamContext);
tôi nhận được cảnh báo sau đây
Warning: stream_socket_client() [function.stream-socket-client]: SSL operation failed with code 1. OpenSSL Error messages: error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert
Dựa trên những thông tin tôi đã có thể tìm thấy trên Google, vấn đề dường như là chứng chỉ của tôi.
Tôi đang tạo tệp csr và pem của mình trong OS X (tệp pem theo hướng dẫn trong hướng dẫn). Khi tôi đã tạo dev.pem, tôi đang tải nó lên nhà cung cấp dịch vụ lưu trữ và cố gắng chạy tập lệnh php của mình. Đây có phải là cách chính xác để tạo và "cài đặt" chứng chỉ không?
Tôi đã hết các ý tưởng gỡ lỗi. Bất kỳ hướng nào sẽ là tuyệt vời.
Bạn có thấy bất kỳ vấn đề nào như Đường dẫn tuyệt đối và tương đối không? –
Tôi đã viết sai chính tả tên tệp của tệp .pem trực tiếp của tôi. -.- Kept nhìn vào nó cho đến khi tôi thấy câu trả lời này là những gì làm cho tôi "cẩn thận" nhìn vào nó. – James