web-dev-qa-db-fra.com

Impossible de se connecter à live 'ssl: //gateway.Push.Apple.com: 2195'

Je suis confronté à un problème avec le code php APNS pour la notification Push sur les périphériques IOS. J'ai deux connexions distinctes pour le développement et la production.

  1. J'ai configuré la connexion de développement sur mon serveur en ajoutant le certificat de fichier .pem et Passphares fonctionnant parfaitement, et j'ai également reçu la notification. Regardez ma configuration de développement:

Url: 'ssl: //gateway.sandbox.Push.Apple.com: 2195'

$Push = new ApnsPHP_Push(
    ApnsPHP_Abstract::ENVIRONMENT_SANDBOX,
    'APNS_Dev_ISAS.pem'
);
$myNewLogger = new MyNewLogger();
$Push->setLogger($myNewLogger);

// Set the Provider Certificate passphrase
$Push->setProviderCertificatePassphrase('1234567');

$Push->setRootCertificationAuthority('APNS_Dev_ISAS.pem');
$Push->connect();

Problème:

  1. Puis j'ai configuré la connexion pour la production en ajoutant les paramètres suivants mais en obtenant l'erreur de connexion:

Url: ssl: //gateway.Push.Apple.com: 2195

$Push = new ApnsPHP_Push(
    ApnsPHP_Abstract::ENVIRONMENT_PRODUCTION,
    'APNS_PROD_ISAS.pem'
);
$myNewLogger = new MyNewLogger();
$Push->setLogger($myNewLogger);

// Set the Provider Certificate passphrase
$Push->setProviderCertificatePassphrase('12345678');

$Push->setRootCertificationAuthority('APNS_PROD_ISAS.pem');
$Push->connect();

Erreur de connexion: INFO: Essai de ssl: //gateway.Push.Apple.com: 2195 ... ERREUR: Impossible de se connecter à 'ssl: //gateway.Push.Apple.com: 2195 ': (0) INFO: Nouvelle tentative de connexion (1/3) ... INFO: Essai de ssl: //gateway.Push.Apple.com: 2195 ... ERREUR: Impossible de se connecter à' ssl: //gateway.Push.Apple.com: 2195 ': (0) INFO: Réessayez de vous connecter (2/3) ... INFO: Tentative de ssl: // gateway. Push.Apple.com:2195...ERROR: Impossible de se connecter à 'ssl: //gateway.Push.Apple.com: 2195': (0) INFO: Réessayer de se connecter (3/3) ... INFO: Essai de ssl: //gateway.Push.Apple.com: 2195 ... ERREUR: Impossible de se connecter à 'ssl: //gateway.Push.Apple.com: 2195': ( 0)

Je recherche le problème sur Google et j'ai trouvé quelques solutions. J'ai tout vérifié et tout va bien, mais sans succès.

  • J'ai utilisé le bon chemin pour le développement et la production.
  • J'ai créé les fichiers .pem de certificat distincts pour les deux et testé le certificat sur l'application pousseur. Certificat sont corrects.
  • Le port est également correct et ne bloque pas mon serveur car le même port est utilisé dans les URL de développement et la notification Push du serveur de développement fonctionne correctement.

Toute aide sera vraiment appréciée. Merci d'avance.

5
Iffi

Le certificat (.pem) ayant pour problème que j'ai été créé pour la notification Push.

Solution: Après quelques jours d’essai sur le même problème, j’ai trouvé que la création d’un certificat avec mot de passe mini-caractères pouvait être 1234. Cela fonctionnera parfaitement pour vous et permettra de vous connecter à IOS Push serveur de notification.

Peut-être que cela aidera quelqu'un d'autre.

Merci.

3
Iffi

J'avais le même problème lorsque j'exécutais mon script PHP. Après quelques recherches, j'ai commenté ces trois valeurs de paires de clés «cafile», «CN_match» et «chiffrements».

Ensuite, il a commencé à fonctionner correctement. J'espère que cette réponse deviendra utile à toute autre personne.

$contextOptions = array(
'ssl' => array(
    'verify_peer' => false, // You could skip all of the trouble by changing this to false, but it's WAY uncool for security reasons.
//    'cafile' => 'NiteVisionWebPushFile.pem',
//    'CN_match' => 'gateway.Push.Apple.com', // Change this to your certificates Common Name (or just comment this line out if not needed)
  //  'ciphers' => 'HIGH:!SSLv2:!SSLv3',
    'disable_compression' => true,
));
0
Siddharth