1

Я использовал PHP скрипт ниже для отправки уведомления толчка, и это работает идеально, если отправленные с моего локального компьютера с помощью «WAMP сервер»IOS уведомления Push-работает локально, а не на Bluehost

Я использую в настоящее время Bluehost услуг и купил выделенный IP, и они открыли APNs портов для меня 2195 и 2196

, но я всегда получать «Failed APNS соединения: 0», а тот же код работает идеально локально

любой помощи, ребята? и спасибо заранее.

stream_socket_client(): Не удалось включить в криптографию /public_html/simplepush.php

stream_socket_client(): не может подключиться к SSL: //gateway.sandbox.push.apple.com: 2195 (неизвестная ошибка) в /public_html/simplepush.php

Код:

<?php 




//$tHost = 'gateway.sandbox.push.apple.com'; 
$tHost = 'gateway.sandbox.push.apple.com'; 
$tPort = 2195; 
// Provide the Certificate and Key Data. 

$tCert = 'Key.pem'; 
$tPassphrase = 'mypasssss'; 
$tToken = "5d0897edddb84f38b951109dce8b99b7a7c7446d57b78a154f057d47dd878ac2"; 

$tAlert = 'New news has been added'; 
$tBadge = 1; 
$tSound = 'default'; 
$tPayload = 'xxx'; 

$tBody['aps'] = array (
'alert' => $tAlert, 
'badge' => $tBadge, 
'sound' => $tSound, 
); 

$tBody ['payload'] = $tPayload; 
$tBody = json_encode ($tBody); 

$tContext = stream_context_create(); 
stream_context_set_option ($tContext, 'ssl', 'local_cert', $tCert); 
stream_context_set_option ($tContext, 'ssl', 'passphrase', $tPassphrase); 

// Open the Connection to the APNS Server. 
$tSocket = stream_socket_client ('ssl://'.$tHost.':'.$tPort, $error, $errstr, 30, STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT, $tContext); 
// Check if we were able to open a socket. 
if (!$tSocket) 
exit ("APNS Connection Failed: $error $errstr" . PHP_EOL); 

// Build the Binary Notification. 
$tMsg = chr (0) . chr (0) . chr (32) . pack ('H*', $tToken) . pack ('n', strlen ($tBody)) . $tBody; 

// Send the Notification to the Server. 
$tResult = fwrite ($tSocket, $tMsg, strlen ($tMsg)); 
if ($tResult) 
echo 'Delivered Message to APNS' . PHP_EOL; 
else 
echo 'Could not Deliver Message to APNS' . PHP_EOL; 
// Close the Connection to the Server. 
fclose ($tSocket); 

?> 

ответ

0

Каждый, столкнувшийся с этой проблемой, отправляется и сгенерирует новый новый файл .pem и все будет работать