Question

J'ai suivi les instructions sur:

Comment créer un serveur fournisseur de notifications Apple Push Lorsque j'exécute le script php sur mon MacOSX ou Windows à l'aide de Parallel Desktop, le script fonctionne. Mais dès que je le lance sur mon hébergement, je reçois le message suivant:

Warning: stream_socket_client() [function.stream-socket-client]: unable to connect to ssl://gateway.sandbox.push.apple.com:2195 (Connection timed out) in provider.php on line 23
Failed to connect 110 Connection timed out 

Est-ce que cela a à voir avec les certificats? Si tel est le cas, comment puis-je créer un certificat qui pourrait fonctionner sur l’ordinateur où est situé mon hébergement?

Était-ce utile?

La solution

Votre fournisseur d'hébergement n'autorise probablement pas les connexions sortantes vers les ports 2195 et 2196. La plupart des fournisseurs d'hébergement partagé n'ont pas ces ports ouverts. Vous devrez peut-être obtenir un VPS ou vous pouvez également essayer UrbanAirship, qui fournit une intégration avec Apple Notification Service et qui est gratuit pour une certaine limite par mois.

Autres conseils

Oui, vous avez besoin d’un certificat. Ceci est expliqué dans la documentation Apple. Une prise, vous aurez probablement besoin de convertir le cert au format .pem. Le certificat .pem doit inclure à la fois le certificat et la clé privée RSA.

Voici un bon site à lire: http://www.macoscoders.com/2009/05/17/iphone-apple-push-notification-service-apns/

Mon pem ressemble à:

Bag Attributes
    friendlyName: Apple Development Push Services: <my data>
    localKeyID: <my local key in hexascii> 
subject=/UID=com.my.push.sandbox1/CN=Apple Development Push Services: <my data>/C=US
issuer=/C=US/O=Apple Inc./OU=Apple Worldwide Developer Relations/CN=Apple Worldwide Developer Relations Certification Authority
-----BEGIN CERTIFICATE-----
<my certificate data omitted>
-----END CERTIFICATE-----
-----BEGIN RSA PRIVATE KEY-----
<my key data omitted>
-----END RSA PRIVATE KEY-----

J'ai trouvé que la solution la plus simple et la moins chère était de demander une adresse IP dédiée à votre hébergeur. Chez Blue Host, c’était 2,50 $ par mois. Avec cette adresse IP dédiée, ils étaient disposés à ouvrir les ports 2195 et 2196.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top