Intereting Posts
Поиск позиции элемента в простом массиве Неустранимая ошибка: класс NAME не найден в (… PATH)? PayPal IPN не обновляет базу данных MySQL SQL-запрос для сопоставления строки, разделенной запятыми, для строки с разделителями-запятыми? Изменение фонового изображения исходного изображения PHP imagecopymerge прозрачно для черного Как поймать сигнал KILL или HUP или пользовательский прерывание? Как получить доступ к статическому члену класса? Использование HTML-очистителя на сайте с использованием только текстового ввода Mysql dyanmic значение как псевдоним В PHPUnit, как я макет родительских методов? Как увидеть ошибку php в включенном файле во время выходного буфера? как заполнить при выпадающем основании значение из другого выпадающего списка в php и jquery? Не удалось удалить из базы данных с помощью php Libreoffice –headless отказывается конвертировать, если не root, не будет работать с PHP-скриптом В htaccess я хотел бы заменить символы подчеркивания дефисом, а затем перенаправить пользователя новый URL-адрес

warning: stream_socket_client (): невозможно установить файл закрытого ключа

не удалось получить эти ошибки при запуске PHP в терминале как php simplepush.php

Warning: stream_socket_client(): Unable to set private key file `/users/accenture/Desktop/newAPNS/ck.pem' in /users/accenture/Desktop/newAPNS/simplepush.php on line 22 Warning: stream_socket_client(): failed to create an SSL handle in /users/accenture/Desktop/newAPNS/simplepush.php on line 22 Warning: stream_socket_client(): Failed to enable crypto in /users/accenture/Desktop/newAPNS/simplepush.php on line 22 Warning: stream_socket_client(): unable to connect to ssl://gateway.sandbox.push.apple.com:2195 (Unknown error) in /users/accenture/Desktop/newAPNS/simplepush.php on line 22 Failed to connect: 0 

Я создал все сертификаты и файл pem с помощью статьи Raywenderlich, http://www.raywenderlich.com/32960/apple-push-notification-services-in-ios-6-tutorial-part-1#comments

Проблема в том, что файл pem был неправильным, я создал файл pem, используя http://www.raywenderlich.com/32960/apple-push-notification-services-in-ios-6-tutorial-part-1 . Создание файла p12 и файла pem для создания p12 для меня не работают. Правильный процесс создания p12 и p12, создающий файл pem, как показано ниже.

После того, как у вас есть сертификат от Apple для вашего приложения, экспортируйте свой ключ и сертификат Apple в виде файлов p12. Вот краткое пошаговое руководство о том, как это сделать:

  1. Нажмите стрелку раскрытия рядом с вашим сертификатом в Keychain Access и выберите сертификат и ключ.
  2. Щелкните правой кнопкой мыши и выберите «Экспортировать 2 элемента …».
  3. Выберите формат p12 из раскрывающегося списка и назовите его cert.p12.

Теперь преобразуем файл p12 в файл pem:

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

Это работает для меня, теперь я получаю push-уведомление.

Преобразование ключевого файла в pem рекомендуется в http://www.raywenderlich.com/32960/apple-push-notification-services-in-ios-6-tutorial-part-1, что вызывало проблемы для меня.

Бег

 openssl pkcs12 -in keyname.p12 -out keyname.pem -nodes -clcerts 

вместо

 openssl pkcs12 -nocerts -out keyname.pem -in keyname.p12 

решил мои проблемы.

Я следил за учебником по youtube, который почти такой же, как статья raywenderlich. Я только что забыл добавить фразу PEM pass. После добавления, как описано здесь , он работал:

 stream_context_set_option($ctx, 'ssl', 'passphrase', 'MyPassPhrase'); 

Это решение для reywenderlich Apple Push Notification Services Tutorial

  $deviceToken = ''; //Enter your token number // Put your private key's passphrase here: $passphrase = '1234';//Enter ck.pem 's password // Put your alert message here: $message = 'My first push notification!';