Я занимаюсь разработкой приложения для iPhone с использованием служб push-уведомлений. Вчера мой PHP-скрипт работал нормально, когда я получил доступ к URL (например, www.website.com/script.php), но теперь он больше не работает.
Странная вещь в том, что когда я запускаю PHP-скрипт из терминала (например, "php script.php"), все работает нормально, и уведомление отправляется приложению.
Я заново создавал свой SSL-сертификат и .pem, поэтому я чувствую, что это не проблема, поскольку он уже работает на сервере, просто из командной строки. Я также попытался запустить exec ("php script.php") внутри скрипта PHP, но безуспешно.
Я выложу свой код ниже. Любой совет будет принята с благодарностью.
$passphrase = 'password';
$message = 'This is a message';
$ctx = stream_context_create();
stream_context_set_option($ctx, 'ssl', 'local_cert', 'ck.pem');
stream_context_set_option($ctx, 'ssl', 'passphrase', $passphrase);
// Open a connection to the APNS server
$fp = stream_socket_client('ssl://gateway.sandbox.push.apple.com:2195', $err, $errstr, 60, STREAM_CLIENT_CONNECT |STREAM_CLIENT_PERSISTENT, $ctx);
if (!$fp)
exit("Failed to connect: $err $errstr" . PHP_EOL);
Вывод: «Не удалось подключиться: 0».