我们目前为CI构建设置了Xcode服务器。
当尝试在设备上下载构建时,我通过SSL访问时遇到了“无法连接到server.local”。
当我尝试通过http下载时,我使用'无法安装应用程序创建,因为server.local的证书无效'
我认为这与iOS 7.1中OTA下载的SSL验证有关,但我使用的是自我分配的证书。
这是Xcode服务器的错误还是限制。我们需要一个非自我分配的证书吗?
由于
丹
答案 0 :(得分:3)
您最好的解决方案是创建一个自定义CA并将其安装在设备上,然后为您的特定域创建证书并将其安装在Xcode服务器上。
首先创建一个CA。
openssl genrsa -out Custom-CA.key 2048
openssl req -x509 -new -key Custom-CA.key -out Custom-CA.cer -days 730 -subj /CN="Company Name Certificate Authority"
现在您需要创建一个使用上述权限签名的证书。
重要提示:server.local
应替换为机器的主机名(原始问题使用的是server.local
)。 IP地址不起作用。
openssl genrsa -out xcode-server.key 2048
openssl req -new -out xcode-server.req -key xcode-server.key -subj /CN=server.local
openssl x509 -req -in xcode-server.req -out xcode-server.cer -CAkey Custom-CA.key -CA Custom-CA.cer -days 730 -CAcreateserial -CAserial xcode-server_serial.txt
然后,您需要在要与服务器一起使用的所有设备上安装Custom-CA.cer
。最简单的方法是将Custom-CA.cer
通过电子邮件发送给这些设备。
在OS X服务器中,您需要导入Custom-CA.cer
,xcode-server.key
和xcode-server.cer
,并使用server.local
证书作为服务器SSL证书。
(来自此guide的信息)
E.g。如果您的主机名称为xcodeserver.companyname.com
,则可以放置/CN=xcodeserver.companyname.com
答案 1 :(得分:1)
你是对的。在7.1中,来自xcode服务器的OTA安装需要SSL验证。因此,您可以获得xcode服务器的SSL证书或执行此解决方法。
您应该能够将您的版本替换/安装到您的设备上。
不像OTA构建那么容易,但它确实有效。
答案 2 :(得分:0)
我找到了解决方案。我可以确认步骤4& 5为我工作!
答案 3 :(得分:0)
有完全相同的问题,这是Safari上的浏览器缓存问题。
我进入了设置 - > Safari - >高级 - >网站数据,然后在我的Xcode服务器网站上刷新,显示删除按钮,并点击该网站。
下次我浏览Safari中的Xcode服务器并尝试安装构建时,我收到了安装OTA证书的提示,当接受完成后我就可以安装应用程序了。