转自: 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服务器配置的更多相关文章

  1. hbuilder IOS APP 打包与发布2

    在上一篇的<hbuilder IOS APP 打包与发布>中,请求 的 是APP ids .  ios开发证书 .和开发配置文件  ,   这一篇中就不写发布证书和配置文件的请求,因为流程 ...

  2. hbuilder IOS APP 打包与发布

    ---恢复内容开始--- 准备:苹果开发者账号,一个Mac系统 没有账号可以再这里注册 https://developer.apple.com/ 因为账号是公司的,自己并没有注册过,这里就不进行阐述了 ...

  3. ios app 企业帐号发布,在浏览器中直接点击链接下载安装

    软件环境:Xcode 6.4 参考链接: 1.http://zxs19861202.iteye.com/blog/1997722 2.http://www.cnblogs.com/abl1992/p/ ...

  4. iOS7.1以后企业应用发布需要HTTPS协议,解决步骤

    操作系统是Window下. 第一步安装软件 1.安装Tomcat6.0.35(Tomcat7.0.34测试通过) 2.安装JDK6(1.6.0_10-rc2,其它版本没测试) 3.安装openssl ...

  5. 苹果iOS App上架流程,非iOS开发人员上架教程

      iOS应用上线发布流程一般包含相关证书文件的配置.Xcode的设置.App Store Connect填写App的相关信息.ipa包上传.审核结果以及相关邮件回复.相关证书文件的配置与Xcode的 ...

  6. ios app: 使用企业license设置发布app的过程

      ios开发者证书与企业证书的内容,关系,以及ios app 使用企业license设置发布app的过程 iOS是一个非常封闭的系统.授权文件(.mobileprovision)和签名证书文件(.c ...

  7. iOS 企业证书发布app 流程

    企业发布app的 过程比app store 发布的简单多了,没那么多的要求,哈 但是整个工程的要求还是一样,比如各种像素的icon啊 命名规范啊等等. 下面是具体的流程 1.修改你的 bundle i ...

  8. 苹果IOS开发者账号总结--发布应用APP时team name是否可以随意写?

    个人账号(Individual): 费用99美金一年, 该账号在App Store销售者只能显示个人的ID,比如zhitian zhang,单人使用.个人账号只能有一个开发者.100个苹果的iOS设备 ...

  9. 【转】在企业内部分发 iOS 应用程序

    (via:破船之家,原文:Provision iOS IPA App for In-House Enterprise Distribution)   在企业内部分发 iOS 应用程序非常复杂.经过努力 ...

随机推荐

  1. @RequestMapping注解详解

    @RequestMapping是一个用来处理请求地址映射的注解,可用于类或者方法上.用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径.@RequestMapping注解有六个属性,下面进行 ...

  2. oracle学习笔记

    --Oracle查询当前版本select * from v$version;----------Oracle 查询服务器端编码----------select * from v$nls_paramet ...

  3. Linux操作系统备份之三:通过二进制拷贝(dd)方式实现Linux操作系统数据的备份

    前面有两篇文章,<Linux操作系统备份之一:使用LVM快照实现Linux操作系统数据的在线备份>和<Linux操作系统备份之二:通过tar拷贝分区实现Linux操作数据的在线备份& ...

  4. c#常见的错误集合

    1:a>b>c是不合法的,是不是合法的呢? 2 优先级是这样的:算术>关系>逻辑>三目>赋值:位运算比较乱 这句话是对是错

  5. N久没写过东西了..写个最近在研究的程序

    import numpy as np import matplotlib.pyplot as plt #a = np.matrix([[1,1.15],[1,1.9],[1,3.06],[1,4.66 ...

  6. Unity 性能

    Unity 5.0 AMD 7650k 自带核显 Unity自建立方体2000正方体 50帧 但每个立方体多达60面 多个三角形 每秒100万面绘制 可能每个都要单独计算光照? 导入3ds模型相当于 ...

  7. DOM节点

    DOM的一个想法 让我们从下面的HTML开始学习吧: <html> <head> <title>The title</title> </head& ...

  8. phpcms V9 常用函数 及 代码整理

    常用函数 及 常用代码 总结如下 <?php //转换字符串或者数组的编码 str_charset($in_charset, $out_charset, $str_or_arr) //获取菜单 ...

  9. 集群间Session共享问题解决方案

    两个基本概念的生命周期 session: 当新客户端发现一个HTTP请求时服务端会创建一个session.并分配一个sessionID作为服务端来客户端的识别,session对象会保存在服务端.此时s ...

  10. 【GO】GO语言学习笔记三

    7.数组: 几乎是最常用的数据类型了... 数组就是指一系列同一类型数据 的集合.数组中包含的每个数据被称为数组元素(element),一个数组包含的元素个数被称为数 组的长度. 常规的数组声明方法: ...