Sunucu Script APN hatası

2 Cevap php

Yük veri gönderirken, benim php komut dosyası bu hatayı alıyorum.

Warning: stream_socket_client() [function.stream-socket-client]:
Unable to set private key file `/Applications/XAMPP/xamppfiles/htdocs/test/apn/apns-dev.pem'
in /Applications/XAMPP/xamppfiles/htdocs/test/apn/push.php on line 42

Warning: stream_socket_client() [function.stream-socket-client]:
failed to create an SSL handle
in /Applications/XAMPP/xamppfiles/htdocs/test/apn/push.php on line 42

Warning: stream_socket_client() [function.stream-socket-client]:
Failed to enable crypto
in /Applications/XAMPP/xamppfiles/htdocs/test/apn/push.php on line 42

Warning: stream_socket_client() [function.stream-socket-client]:
unable to connect to ssl://gateway.sandbox.push.apple.com:2195 (Unknown error)
in /Applications/XAMPP/xamppfiles/htdocs/test/apn/push.php on line 42

What is the reason ? Do I need to change any settings? I have also installed the .pem file in the server.

Teşekkürler

2 Cevap

Eğer APN bağlanmak için kullandığınız PHP kodu (push.php) gönderebilir miyim?

Some shots in the dark:
- Are both the certificate and private key in that one .pem file?
- Did you remove the password from the private key file, or are you setting it properly in your PHP code?
- Does the user running your script have the proper unix permissions to access/read the cert/key file?
- Can you access Apple's server from your machine? You can test by running telnet.

telnet gateway.sandbox.push.apple.com 2195

Ben her ikisi için aynı kullanarak oysa ben bu sorunu vardı ve anahtar üretim süreci konu oldu, sertifika ve anahtar dosyası için iki farklı openssl komutlar vardır. Burada sertifika oluşturmak ve (. Dışa aktardığınız p12 dosyaları varsayarak) Özel anahtar dosyası şifresini kaldırmak nasıl:

openssl pkcs12 -clcerts -nokeys -out aps-dev-cert.pem -in aps-dev-cert.p12
openssl pkcs12 -nocerts -out aps-dev-key.pem -in aps-dev-key.p12
openssl rsa -in aps-dev-key.pem -out aps-dev-key.unencrypted.pem
cat aps-dev-cert.pem aps-dev-key.unencrypted.pem > aps-dev.pem

İlk iki openssl komutları farkı unutmayın.