APNs 通过 macOS Sierra 推送通知

2024-02-07

我正在尝试使用连接到的简单 PHP 工具向我的手机发送推送通知ssl://gateway.push.apple.com:2195,但连接失败并出现以下错误:

Warning: stream_socket_client(): SSL operation failed with code 1. OpenSSL Error messages:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed in <Users/.../file.php> on line 30

Warning: stream_socket_client(): Failed to enable crypto in <Users/.../file.php> on line 30

Warning: stream_socket_client(): unable to connect to ssl://gateway.sandbox.push.apple.com:2195 (Unknown error) in <Users/.../file.php> on line 30
Failed to connect: 0 

这一切都是从我升级到 macOS Sierra 的 GM Seed 开始的。 macOS Sierra 中有哪些新功能会影响 SSL 连接? 我该如何解决这个问题?


我遇到了同样的错误,这就是我所做的:

1)更新了我的openssl(我想你不需要这个)进入第2步,因为这将需要大约10分钟

brew install openssl

确保您更新正确:

openssl version

如果没有,请尝试这个或谷歌:

brew link --force openssl

2)检查 php default_cert_file 路径:

php -r "print_r(openssl_get_cert_locations());"

这就是我得到的:

Array
(
[default_cert_file] => /usr/local/libressl/etc/ssl/cert.pem
[default_cert_file_env] => SSL_CERT_FILE
[default_cert_dir] => /usr/local/libressl/etc/ssl/certs
[default_cert_dir_env] => SSL_CERT_DIR
[default_private_dir] => /usr/local/libressl/etc/ssl/private
[default_default_cert_area] => /usr/local/libressl/etc/ssl
[ini_cafile] => 
[ini_capath] => 
)

3)从这里下载cacert.pem:

wget http://curl.haxx.se/ca/cacert.pem

4) 将 cacert.pem 文件移动到 default_cert_file 路径(以 root 身份):

sudo mv cacert.pem /usr/local/libressl/etc/ssl/cert.pem

可能我需要先创建这个目录

之后,我的 php 脚本就工作了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

APNs 通过 macOS Sierra 推送通知 的相关文章

  • 如何使用MKMapView完成加载委托,可能的“完成显示”委托?

    当用户在选择注释后点击 保存 时 我尝试保存地图视图的缩略图 当用户尚未放大该注释时会出现问题 因此尚未加载关闭缩放级别 这就是用户点击保存后我正在做的事情 将布尔值 saving 设置为 true 居中并放大注释 无动画 当调用mapVi
  • React Native:不透明视图内的透明视图

    我想用不透明框架和透明中心显示相机的视图 就像图片中的一样 黑色部分是相机的视图 我正在寻找具有纯反应本机组件的解决方案 没有额外的库 例如https github com gilbox react native masked view h
  • CBPeripheral 名称有时为 null

    我正在开发一个应用程序来与蓝牙 LE 外围设备进行通信 我目前正在测试的外围设备是其中之一these http www ti com tool cc2540dk mini 有趣的是 有时当我发现它时 我会得到它的正确名称 SimpleBLE
  • 如何自动缩放mapView以显示叠加层

    我可以在 mapView 上绘制多边形 但是我需要找到多边形并手动缩放它 有没有办法自动执行此过程 例如调整中心多边形 我浏览过互联网并阅读了一些相关文章 其中大多数都是基于折线和点的 任何形式的帮助将不胜感激 因为我正在寻找解决方案一段时
  • 多次添加同一个子视图来查看

    我不知道这是否可行 但我想做的是将子视图多次添加到视图中 我尝试过这样的事情 self view addSubview newView newView center CGPointMake 160 100 self view addSubv
  • 如何防止 RealmSwift 列表中出现重复项?

    如何防止向列表中添加重复项RealmSwift 我有我的User作为领域对象 但真正的数据源是服务器 只是使用领域在本地缓存用户 当我从服务器获取当前用户数据时 我想确保存储在领域中的用户拥有来自服务器的所有播放列表 以及它们的曲目列表等
  • “同时创建 xib 文件”按钮已禁用

    我在创建时遇到这个问题UIView s子类 创建 例如 UIViewControllers or UITableViewCells没关系 为什么会出现这种情况 I create view using cmd N and Xcode Vers
  • 带有 Core Data 对象的动态 UITableView 高度

    过去几天我一直在试图解决一个谜团 即为什么我的批处理大小为 20 的 NSFetchedResultsController 总是在获取完成后立即错误 即加载到内存中 我的所有对象 从而导致请求需要约 20 秒 事实证明 这是因为在我的 he
  • 无法将 admob 与 firebase iOS/Android 项目链接

    我有两个帐户 A 和 B A 是在 Firebase 上托管 iOS Android unity 手机游戏的主帐户 B 用于将 admob 集成到 iOS Android 手机游戏中 我在尝试将 admob 分析链接到 Firebase 项
  • 由于语言错误,Itunes Connect 无法提交

    Thats all it shows https i stack imgur com 0aZm8 png 我不确定它没有告诉我出了什么问题 it shows its linked to the language https i stack
  • 如何检测Retina高清显示屏?

    UIScreen有一个新的 nativeScaleiOS 8 中的属性 但文档没有提及它 property nonatomic readonly CGFloat nativeScale 还有一个scale属性 但文档说它是 2 用于视网膜显
  • PresentModalViewController 不执行任何操作

    我有一个 UIViewController parent 调用presentModalViewController与另一个 UIViewController child on viewDidLoad If parent没有 UINaviga
  • 无法使用 Xamarin 和 WCF 访问 Web 服务

    我想使用 Xamarin 和 WCF 来使用公共 Web 服务 对于这个演示 我将使用Xamarin iOS 这是我试图使用的 公共 网络服务 http www webservicex net globalweather asmx WSDL
  • 为什么我的 tableView 函数运行了 3 次?

    我有一个 UITableView 并且有执行它所需的方法之一 func tableView tableView UITableView numberOfRowsInSection section Int gt Int println sec
  • FireMonkey iOS RAD Studio XE2 - 在从 URL 加载的表单上显示图像

    是否可以将 TImage 放置在 iOS 的 FMX 表单上 并将图像 jpg 从 URL 加载到此 TImage 中以在 iOS 应用程序中显示 我尝试过但没有成功 任何正确方向的提示或指出都会受到赞赏 将 TButton TImageC
  • 混合静态和动态 UITableViewController 内容会导致 NSRangeException

    我一直在寻找这个错误 并找到了一些具有类似行为的帖子 但没有解决问题的解决方案 我有一个 UITableViewController 在 SB 中声明为静态 它具有以下部分 第 0 部分 配方 是静态的 有 4 个单元格 第 1 部分 口味
  • 使用 UIImageJPEGRepresentation 时,compressionQuality 应该是多少?

    我想对用户库中的照片应用滤镜 然后将其写回磁盘 我在用着UIImageJPEGRepresentation 该函数需要一个UIImage and a compressionQuality值介于 0 0 和 1 0 之间 因为我想保留原始质量
  • 显示键盘时如何在 TextView 下方添加更多填充

    当我在 ScrollView 中有 TextField 并点击它时 键盘会按预期显示 但似乎 TextField 已向上移动到足以显示输入区域 但我希望移动到足够的位置 以便整体可见 否则它看起来像是被剪裁了的 我找不到改变这种行为的方法
  • 在 UIMenuItem 上设置accessibilityLabel

    我正在尝试设置accessibilityLabel of a UIMenuItem而且似乎没有效果 无论如何 VoiceOver 只是读取项目的标题 let foo UIMenuItem title foo action selector
  • 为什么这个 SKPhysicsJointPin 不能将这 2 个精灵保持在一起?

    我显然不太了解 SKPhysicsJoint 但是除了 Apple 文档之外 网上的信息还很少 下面的代码有什么问题 我认为应该保持头部和颈部永久连接 我的意图是它们就像两张带有大头针的纸 这样它们可以旋转一点 但不仅仅是完全分开 当我运行

随机推荐

  • 如何从 Ruby on Rails 输出 JSON?

    我希望有一个通过 AJAX 创建 更新的模型 在 Ruby on Rails 中如何做到这一点 另外 更具体地说 如何在 RoR 中输出 JSON def create response success gt false source So
  • 如何在Python中很好地打印出字典?

    我刚刚开始学习 python 正在构建一个文本游戏 我想要一个库存系统 但我似乎无法打印出字典而不使其看起来很丑 这是我到目前为止所拥有的 def inventory for numberofitems in len inventory c
  • 如何销毁tinyMce?

    我使用的是最新版本3 4 b3 我将它放在一个对话框中 它的内容是动态创建的 所以这意味着tiny 应该将自身绑定到的文本区域每次都会被创建 因此 当我第一次加载对话框时 会出现微小的情况 如果我第二次加载该对话框 该对话框将不会再次显示
  • 为什么 Rails RSpec 响应显示 302 而不是 401?

    我已经被这个问题困扰好几天了 我不知道它出了什么问题 几个月前我开始使用 Ruby on Rails 目前正在学习使用 API 进行身份验证 我看过其他类似的主题here https stackoverflow com questions
  • 在 BinaryObjects 的 Ignite 缓存上执行 SQL

    我正在从 Spark 数据帧创建 BinaryObject 的缓存 然后我想在该 ignite 缓存上执行 SQL 这是我的代码在哪里bank是包含三个字段 id name 和age 的数据框 val ic new IgniteContex
  • MATLAB 的堆栈大小是多少?

    MATLAB R2018a 64 位 的默认堆栈大小是多少 堆栈大小似乎比 64 位 C 程序大 我为什么这么问 我问这个问题是因为我正在调用英特尔 MKL拉帕克 dtrtri https software intel com en us
  • 在java中修改复杂的csv文件

    我想编写一个可以打印和修改不规则csv文件的程序 格式如下 1 date 2 organization name 3 student name id number residence student name id number resid
  • 将视觉选择发送到外部程序而不影响缓冲区

    我想要实现的是将视觉选择发送到外部程序而不影响缓冲区的内容 Example 让以下代码块代表当前缓冲区 让 代表视觉选择的结束 This is not a test 1 lt This is not gt a test 2 This is
  • YouTube 播放器.destroy();即使在验证玩家时也会抛出“this.a is null”

    所以我有一个带有两个面板的小应用程序 使用 iframe API 单击一个面板将全屏展开该面板 并显示 播放视频 按钮和一些附加信息 单击左上角的按钮将使 UI 返回到标准状态 关闭视频并将面板缩小到适合 50 50 现在我们有两个视频 我
  • 如何处理带有图像和文本视图的自定义列表视图中的图像视图的点击?

    我想知道我们如何处理带有图像和文本视图的自定义列表视图上的图像视图的点击 我什至使 Imageview 可点击 这是我的代码 自定义适配器 java public class CustomAdapter extends ArrayAdapt
  • 返回第一个表中的所有数据,如果存在则仅返回第二个表中的 1 个数据

    我正在使用MySql 我有 2 个表 一个是带有主键 propertyId 的名称和数据列表 表 2 包含具有主键 propertyImageId 的图像 每个 propertyId 可能有多个图像或根本没有图像 我需要获取属于agentI
  • SQL不是单组组函数

    当我运行以下 SQL 语句时 SELECT MAX SUM TIME FROM downloads GROUP BY SSN 它返回客户下载的最大总价值 但是如果我尝试通过将其添加到 select 语句来查找该最大值所属的社会安全号码 SE
  • C++ 使用 constexpr 和 lambda 表达式

    我正在看书C 17 完整指南 https rads stackoverflow com amzn click com 396730017X以及第 6 1 节中constexprlambda作者举了两个例子 auto squared1 aut
  • 检查 Swift 中是否存在 func

    我想在调用函数之前检查它是否存在 例如 if let touch AnyObject touches anyObject let location touch locationInView self touchMoved Int locat
  • Glassfish 作为 OSGi 容器

    我正在评估 OSGi 容器 主题是使用 Glassfish 来包含我的 OSGi 应用程序组件 我的问题是 Glassfish 对此有好处吗 有人有以这种方式使用它的经验吗 背景 该应用程序不是 Java EE 应用程序 而是 Spring
  • Bash 在脚本中退出 sudo

    我需要使用 sudo 执行安装脚本 但在脚本结束时 脚本需要退出 sudo 并以普通用户身份继续 Example sudo install sh 脚本以 root 身份运行并执行所需操作 su myscriptuser service my
  • 如何以编程方式获取我的设备的手机号码?

    我尝试过使用两种方法来检索我的电话号码 但这两种方法都不起作用 我用了 电话管理器 订阅管理器 我确实获得了网络名称 国家 地区 iso 和 IMEI 但每当我尝试返回号码时 它都不会返回任何内容 我还添加了这些所需的所有权限 我的清单如下
  • Selenium - 过时的元素引用:元素未附加到 C# 中的页面文档

    我正在使用 selenium 来获取网站表格中的数据进行分析 我必须扫描并获取大约 1000 行的表 我知道该页面有 Javascript 它会自动更新 DOM 但表的行太多 所以当我扫描代码时总是抛出异常 我尝试使用以下代码 Boolea
  • 在 Android 搜索视图中显示建议列表中的选择

    我有一个带有建议列表的搜索视图 如果用户从列表中选择一个项目 则会发送一个新意图 我可以应用我的过滤器 但搜索视图仍为空 如果我使用 setQuery 更新 onNewIntent 中的搜索视图 见下文 效果是所选项目显示在搜索视图中 但建
  • APNs 通过 macOS Sierra 推送通知

    我正在尝试使用连接到的简单 PHP 工具向我的手机发送推送通知ssl gateway push apple com 2195 但连接失败并出现以下错误 Warning stream socket client SSL operation f