我有一个应用程序,我可以在没有 SSL 的情况下通过无线方式安装。
通过我的 iOS 设备,我点击了一个带有指向清单 plist 文件的正确 itms 链接的 HTML 文件,清单文件开始安装应用程序。
当 SSL 被添加到混合中时,事情就会出错。我可以通过 SSL 找到 HTML 文件。如果将清单中的 url 字符串修改为使用 https 而不是 http,我仍然会收到安装应用程序的提示,但在点击“安装”时,我会收到错误提示“无法下载 AppName”。从应用程序图标大纲中的进度条的外观来看,尚未下载任何应用程序。apache ssl_request 日志和错误日志是静默的。访问日志只显示对清单文件的命中,通常它显示对清单和 ipa 文件的命中。iOS 设备上的控制台日志也没有显示。
好的,所以我尝试了一条不同的路线,只是想看看会发生什么。如果我改为修改指向清单文件的 itms 链接以使用 https 而不是 http,我会立即收到无法连接托管文件的服务器的错误。在这种情况下,错误、ssl 和访问日志是静默的,而 iOS 控制台状态:
Fri Mar 4 00:15:47 unknown itunesstored[5009] <Warning>: Could not load download manifest with underlying error: Error Domain=NSURLErrorDomain Code=-1202 "Cannot connect to the Store" UserInfo=0x1bd790 {NSLocalizedFailureReason=A secure connection could not be established. Please check your Date & Time settings., NSLocalizedDescription=Cannot connect to the Store}
有任何想法吗?SSL 将成为未来的要求,所以我必须考虑到它。如果重要的话,我使用的是自签名证书。我将此证书安装到 iOS 设备上,但它并没有改变上述任何行为。这是在 iOS 4.2.1 和 Apache/2.2.15 上。
当然,我不是唯一一个尝试过这个的人。任何帮助,将不胜感激。