我在向服务器发送推送通知请求时遇到问题。在尝试连接到苹果服务器时,我们收到以下响应,
ApnsPHP[15748]:信息:尝试 ssl://gateway.sandbox.push.apple.com:2195...2013 年 1 月 15 日星期二 08:20:28 +0100 ApnsPHP[15748]:错误:无法连接到“ssl://gateway.sandbox.push.apple.com:2195”:权限被拒绝 (13)
我们检查了服务器设置,服务器没有阻止任何传出请求。我们按照 Apple 的指南创建了 p12 证书,并通过在服务器中执行以下 shell 命令将其转换为 .pem。
openssl pkcs12 -in HSPushNopassword.p12 -out HSPushNopassword.pem -nodes -clcerts
相同的代码和证书在另一台服务器上运行良好。
请告诉我为什么会出现此错误?谢谢,
最佳答案
有比完全禁用 SELinux 更好的解决方案。问题是,在大多数 SELinux 系统(如我正在使用的 RedHat)上,不允许 HTTPD 创建网络连接。
您可以使用此命令来启用它:
setsebool -P httpd_can_network_connect=1
-P
用于永久设置。
我希望它能有所帮助,尽管该帖子已被接受
关于apple-push-notifications - 苹果 apns 'Permission denied' 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14333013/