iOS app 企业内部发布及HTTPS服务器配置
转自: http://www.cnblogs.com/cocoajin/p/4082488.html
iOS企业内部发布及HTTPS服务器配置
一:所需的条件
1. 苹果开发者证书,企业版 299$ 版本
2. ssl 证书,即https使用的服务器证书
3. web服务器,支持https
4. 一个域名,可以是子域名,绑定ssl证书和https服务器
二:大致流程
申请免费或付费ssl证书-----》 配置https web服务器------》发布企业版ios app-----》配置safari浏览器安装
1: ssl证书,由于苹果最近的新要求,之前发布使用的http方式已经不行了,现在必须使用https,所以我们需要ssl证书;而ssl证书一般都是有CA机构颁发的,,网上好多大的CA机构,大多收费,,不过目前也有免费的ssl证书,这里,我使用的是免费的ssl证书,有效期为1年,在浏览器上,可以看到是 绿色的,已验证身份的 ssl 证书
免费 ssl 申请 www#wo#sign#com 去掉 ## ,你懂的
只支持绑定一个域名,可以是子域名,比如 ssl.abc.com,在申请证书绑定时,会验证域名,验证你对域名的所有权;
申请成功之后,CA会给你颁发一个 ssl证书的压缩包,命名为你绑定的域名,压缩包里面解压后是各种web服务器的https证书,比如apache,iis,ngnix,tomcat 等
2:配置https web服务器
感谢朋友为我提供的测试 vps
这里我使用的是 ubuntu12 ,apache2
首先做域名解析 ,把和ssl证书绑定的域名 ssl.abc.com A记录指向 服务器地址,服务器绑定域名
上传 forApache.zip 里面的 证书到 服务器上
配置apache2的 ssl配置文件 /etc/apache2/sites-available/default-ssl
如图 51行,52行,,把相应的证书上传到指定目录,并添加到配置文件里面,为apache2服务器加上 ssl证书
然后,启动 apache2的 ssl功能,模块,并重新启动 apache2服务器,测试https 访问是否正常
a2ensite default-ssl
a2enmod ssl
apache2 restart
关于ubuntu 服务器 apache2 ssl 服务的配置,可以参考 :http://www.server-world.info/en/note?os=Ubuntu_14.04&p=httpd&f=7
3 . 使用企业证书打包ios app
如何使用企业证书打包,可以参考 http://blog.csdn.net/mergerly/article/details/17352735
我这里只说明一下,打包发布的后一部分,关于 企业分发的部分,在最后打包的时候把 Save for Enterprise Distribution勾上
注意 填写的url,一定要是你的 https服务器的目录,上面保存会在桌面生成两个文件,一个ipa,一个plist文件;
然后把 ipa和plist 文件 一起放到 https服务器的指定目录,我放的是根目录,所以url填写如上图;
如上图,我的url及服务器地址 https://teso.cocoajin.org/Testapp.ipa;
然后,新建立一个,访问的安装网页 test.html ,同样把 test.html放到https网站根目录,可以这样用手机safari浏览器,访问https://teso.cocoajin.org/test.html 安装
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
< html > < meta http-equiv="content-type" content="text/html; charset=UTF-8" /> < head > < title >testapp 安装 </ title > </ head > < body > < center > < h2 > 请使用苹果的safari浏览器打开本页面,然后点击 安装 </ h2 > < font size="13"> < h1 >< a href="itms-services://?action=download-manifest&url=https://teso.cocoajin.org/Testapp.plist"> 安装</ a > </ h1 > </ font > </ center > </ body > </ html > |
重点是这句
1
|
< h1 >< a href="itms-services://?action=download-manifest&url=https://teso.cocoajin.org/Testapp.plist"> 安装</ a > </ h1 > |
指向你的https服务器根目录下的 Testapp.plist文件,手机访问它,,它去找指定目录下的 Testapp.ipa,然后根据协议签名规则在手机上下载安装 Testapp
注意:如果你手机测试访问 test.html无法安装,就在 服务器的mime.types 里面,添加一下
application/octet-stream ipa
text/xml plist
mime.types文件目录为 linux下 /etc/mime.types
window服务器 apache/conf/myme.types
4. 上面的都配置完之后,
用 iphone 的safari 浏览器打开 https://teso.cocoajin.org/test.html ,即你指定的访问安装页面,然后在手机里面,点击安装,,然后,打开,
如果你的手机第一次安装某企业证书发布的app时,会提示你信任一下证书,即可;
个人的测试页面及服务器以后可能停掉,请仔细查看流程,自行搭建企业发布平台
iOS app 企业内部发布及HTTPS服务器配置的更多相关文章
- hbuilder IOS APP 打包与发布2
在上一篇的<hbuilder IOS APP 打包与发布>中,请求 的 是APP ids . ios开发证书 .和开发配置文件 , 这一篇中就不写发布证书和配置文件的请求,因为流程 ...
- hbuilder IOS APP 打包与发布
---恢复内容开始--- 准备:苹果开发者账号,一个Mac系统 没有账号可以再这里注册 https://developer.apple.com/ 因为账号是公司的,自己并没有注册过,这里就不进行阐述了 ...
- ios app 企业帐号发布,在浏览器中直接点击链接下载安装
软件环境:Xcode 6.4 参考链接: 1.http://zxs19861202.iteye.com/blog/1997722 2.http://www.cnblogs.com/abl1992/p/ ...
- iOS7.1以后企业应用发布需要HTTPS协议,解决步骤
操作系统是Window下. 第一步安装软件 1.安装Tomcat6.0.35(Tomcat7.0.34测试通过) 2.安装JDK6(1.6.0_10-rc2,其它版本没测试) 3.安装openssl ...
- 苹果iOS App上架流程,非iOS开发人员上架教程
iOS应用上线发布流程一般包含相关证书文件的配置.Xcode的设置.App Store Connect填写App的相关信息.ipa包上传.审核结果以及相关邮件回复.相关证书文件的配置与Xcode的 ...
- ios app: 使用企业license设置发布app的过程
ios开发者证书与企业证书的内容,关系,以及ios app 使用企业license设置发布app的过程 iOS是一个非常封闭的系统.授权文件(.mobileprovision)和签名证书文件(.c ...
- iOS 企业证书发布app 流程
企业发布app的 过程比app store 发布的简单多了,没那么多的要求,哈 但是整个工程的要求还是一样,比如各种像素的icon啊 命名规范啊等等. 下面是具体的流程 1.修改你的 bundle i ...
- 苹果IOS开发者账号总结--发布应用APP时team name是否可以随意写?
个人账号(Individual): 费用99美金一年, 该账号在App Store销售者只能显示个人的ID,比如zhitian zhang,单人使用.个人账号只能有一个开发者.100个苹果的iOS设备 ...
- 【转】在企业内部分发 iOS 应用程序
(via:破船之家,原文:Provision iOS IPA App for In-House Enterprise Distribution) 在企业内部分发 iOS 应用程序非常复杂.经过努力 ...
随机推荐
- 解读ContentResolver和ContentProvider
转自:http://cthhqu.blog.51cto.com/7598297/1281217 1. ContentProvider的概述 ContentProvider: (Official Def ...
- hdu5714 拍照[2016百度之星复赛C题]
由于船移动的速度都一样,那么对于往一个方向的船相对距离其实是不变的,我们可以把往一个方向移动的船都视作静止,并求出在哪些观测位置可以看到,很明显对于船[x,y,z],当x+z>=y-z的时候,可 ...
- leetcode:1-5题代码整理
以下是这段时间抽时间刷的前5题,都是自己想的解法,或许不是最优解,只是整理下,方便日后优化提升 1. Two Sum: class Solution: # @return a tuple, (inde ...
- 二十六、Java--------反射
反射 正常情况下,我们必须知道一个类的完整路径后才可以实例化对象,但是在Java也可以通过一个对象来找到其所在类的信息,这其实就是Class的功能. 可以看到此时的所有操作都是反着来,这就是反射. p ...
- java第二次作业
这次通过学习,我掌握了下拉菜单和单选按钮的使用下拉菜单构造方法:JComboBox() 创建具有默认数据模型的 JComboBox.JComboBox(ComboBoxModel aModel) 创建 ...
- Zend框架设置数据库连接编码为utf8三种方法
第一种:$conn['host'] = '127.0.0.1';$conn['username'] = '56_' . $tenant['tenant'];$conn['password'] = $t ...
- python之信用卡ATM(第五天)
本节作业 作业需求: 模拟实现一个ATM + 购物商城程序 额度 15000或自定义 实现购物商城,买东西加入 购物车,调用信用卡接口结账 可以提现,手续费5% 每月22号出账单,每月10号为还款日, ...
- 轮廓线DP POJ3254 && BZOJ 1087
补了一发轮廓线DP,发现完全没有必要从右往左设置状态,自然一点: 5 6 7 8 9 1 2 3 4 如此设置轮廓线标号,转移的时候直接把当前j位改成0或者1就行了.注意多记录些信息对简化代码是很有帮 ...
- MFC 工具栏隐藏与显示
最近在学MFC,看的是孙鑫的VC++视频,感觉还不错.在看到第九节课的时候,讲到工具栏的时候,做了个小功能:工具栏的隐藏和显示,但是有个bug就是一个悬浮的工具栏隐藏后再显示,就会变成停靠状态.这里我 ...
- CentOS 6.5 安装HDFS集群(Hadoop-2.7.3)
安装真实集群,而不是但节点或者伪分布式,以3个节点为例,node1为NameNode和SecondNameNode,node2和node3为DataNode. 1.3台机器的配置必须要一模一样,只需要 ...