APN + PHP “stream_socket_client(): impossible d'activer les crypto”.
Je vais avoir des ennuis avec l'aide d'un APN avec PHP et de faire passer le message suivant:
stream_socket_client(): Failed to enable crypto
Le problème ne se produit parfois, et d'autres fois, il serait réellement envoyez la commande.
Depuis que j'ai le script de test sur une boucle de 10 itérations, je voudrais parfois d'obtenir ceci:
stream_socket_client(): SSL: Connection reset by peer
Je suis en essais à l'aide de la sandbox serveur tls://gateway.sandbox.push.apple.com:2195
Voici ce que j'ai essayé:
- J'ai essayé de relancer le PEM et de tous les certificats avec elle.
- J'ai joué un peu avec le protocole de requête
sslv3://
ettls://
. - J'ai joué un peu avec le mot de passe (push travaillé sans passphrase btw)
- J'ai essayé de chercher stackoverflow pour une solution et rien n'a fonctionné.
- Vérifié le fichier pem autorisations
644
- Vérifié pem répertoires parents autorisations
755
Il semble que toutes les solutions que j'ai trouvé sur Google et sont DONC des personnes ayant des problème complètement à la poussée.
Je me sens comme le service est limitée par la vitesse de peut-être? Parce que nous avons attendu un certain temps (environ 15 minutes), puis il a essayé de nouveau, et a réussi à pousser autour de 100 messages jusqu'à ce que j'ai commencé à avoir ce message de nouveau.
- Avez-vous trouvé une solution pour ce faire, Samer? Ma situation est la vôtre! Et bien en fait j'ai été en mesure d'envoyer des apns parfois, mais dernièrement, j'ai réalisé mon script passé des mois à essayer d'envoyer des apns un à la fois, même après mon certificat a expiré...je me demande si Apple a bloqué mon IP et peut-être maintenant que j'ai cessé d'essayer de se connecter, ils vont débloquer mon IP après un certain laps de temps...
- Tant pis, vérifier ma réponse sur la modification des serveurs d'Apple!! Maintenant, j'utilise le protocole ssl://api.push.apple.com:443 au lieu de ssl://passerelle.push.apple.com:2195
Vous devez vous connecter pour publier un commentaire.
La sandbox service push est limitée par la vitesse. J'ai vécu moi-même lors de l'essai, mais n'ont jamais rencontré cette limite à l'aide de la production de l'API.
Vous pourriez également être frapper leurs autres protections.
Êtes-vous l'ouverture d'une connexion, l'envoi d'un message, fermeture de la connexion et ensuite en boucle, et de le faire une fois de plus?
Qui vous permettra d'obtenir vos notifications abandonné. Apple veut vous envoyer plusieurs notifications push à l'aide de la même connexion, pas une nouvelle à chaque fois.
D'Apple Docs @ https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/CommunicatingWIthAPS.html
Mon code PHP qui génère l'erreur suivante:
Le problème était la putain de certificat expiré le jour avant-hier! 🙂 Pouvez-vous croire cela?
Donc, j'ai besoin de refaire mon fichier PEM.
Il n'est pas nécessaire de recréer votre fichier pem
cette erreur se produit lorsque vous utilisez une mauvaise Phrase de passe
ce qui concerne
Emiliano
J'ai eu ce problème. Disparu après avoir donné l'autorisation d'écriture pour "tout le monde" pour le .fichier pem.
J'ai ce problème parce que j'ai bêtement oublié d'inclure l'extension de fichier (.pem), lors de la fourniture du chemin d'accès au fichier pour local_cert.
quelques vérifications :
spaces
et avec<
ou>
Dans mon cas, le problème était avec mon mac (OSX Sierra). J'ai téléchargé php cert et à mon serveur, il a couru, et la notification a été livré.