前言

一般公司在开发IOS的APP,发布测试版本,这是一个很繁琐的过程,对于一般的公司基本上就是把测试机加入开发列表中,然后打包APP,发布到网盘,或者发到QQ上,供测试人员下载安装测试。这绝对是一个崩溃的过程。

解决方案

RT. 搭建IOS应用的在线安装环境,等环境搭建好,把发布位置告知APP开发人员,IOSAPP开发人员可以通过命令行打包APP,并且使用scp 命令 上传安装包。然后通知测试人员使用Safari浏览器打开地址,在线安装就可以了,很大程度的减少了无效工作量,并且非常方便。

好了,接下来开始:

环境: centos 7  httpd openssl https

1.安装httpd 和mod_ssl
yum install -y openssl    #使用openssl可手动创建证书
yum install -y httpd
yum install -y mod_ssl
#防火墙打开80、443端口,然后重启
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=443/tcp --permanent
firewall-cmd --reload
#Apache开启
systemctl enable httpd
systemctl start httpd
2.开启HTTPS服务因为iOS7.1以后,Apple不再支持HTTP方式的OTA,所以我们需要为Apache开启HTTPS。OpenSSL自制证书开启HTTPS的第一步,就是需要先生成ssl证书。生成服务器的私钥
mkdir /etc/httpd/ssl cd /etc/httpd/ssl sudo openssl genrsa -out server.key 1024生成签署申请(Common Name必须为服务器的ip或域名)
sudo openssl req -new -key server.key -out server.csr生成CA私钥
sudo openssl genrsa -out ca.key 1024用CA的私钥产生CA的自签署证书
sudo openssl req -new -x509 -days 36500 -key ca.key -out ca.crt创建demoCA
demoCA里面创建文件index.txt和serial,serial内容为01,index.txt为空,以及文件夹newcerts
sudo openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key#这个地方的意思是在/etc/pki/CA 中创建这些文件和文件夹
这样在/etc/httpd/ssl中看到这些文件
[root@localhost ssl]# ls
ca.crt  ca.key  server.crt  server.csr  server.key
3.配置http.conf、ssl.conf和mime.types 配置文件
在改之前需要备份一下http.conf ssl.conf mime.typessudo cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.origin
sudo cp  /etc/httpd/conf.d/ssl.conf /etc/httpd/conf.d/ssl.conf.origin
sudo cp /etc/mime.types /etc/mime.types.originssl.conf
DocumentRoot "/var/www/html"
ServerName 192.168.1.101SSLCertificateFile /etc/httpd/ssl/server.crt
SSLCertificateKeyFile /etc/httpd/ssl/server.keyhttp.conf
DocumentRoot "/var/www/html"#
# Relax access to content within /var/www.
#
<Directory "/var/www">AllowOverride None# Allow open access:Require all granted
</Directory># Further relax access to the default document root:
<Directory "/var/www/html">## Possible values for the Options directive are "None", "All",# or any combination of:#   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews## Note that "MultiViews" must be named *explicitly* --- "Options All"# doesn't give it to you.## The Options directive is both complicated and important.  Please see# http://httpd.apache.org/docs/2.4/mod/core.html#options# for more information.#Options Indexes FollowSymLinks MultiViews## AllowOverride controls what directives may be placed in .htaccess files.# It can be "All", "None", or any combination of the keywords:#   Options FileInfo AuthConfig Limit#AllowOverride None## Controls who can get stuff from this server.#Require all granted
</Directory>mime.type
text/xml                                        xml xsd rng plist
application/octet-stream                bin lha lzh exe class so dll img iso ipa
4.配置installIPA.plist和 index.html
installIPA.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/
PropertyList-1.0.dtd">
<plist version="1.0">
<dict><key>items</key><array><dict><key>assets</key><array><dict><key>kind</key><string>software-package</string><key>url</key><string>https://192.168.1.101/test.ipa</string></dict></array><key>metadata</key><dict><key>bundle-identifier</key><string>com.jeiao.test</string><key>bundle-version</key><string>1.0</string><key>kind</key><string>software</string><key>releaseNotes</key><string>v1</string><key>title</key><string>testapp</string></dict></dict></array>
</dict>
</plist>[root@localhost html]# more index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.or
g/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>应用名字</title>
</head>
<body>
<h1 style="font-size:40pt">iOS应用OTA安装<h1/>
<h1 style="font-size:40pt">
<a title="iPhone" href="itms-services://?action=download-manifest&url=https://192.168.1.101/installIPA.plist">Iphone Download</a>
<h1/>
<a title="iPhone" href="http://192.168.1.101/ca.crt">ssl 证书安装</a>
<h1/>
</body>
</html>
5.然后ca.crt  index.html  installIPA.plist  test.ipa 都放在发布目录这样访问<span style="color:#ff6666;">https://192.168.1.101:443</span>就可以看到了

这样小伙伴们就可以愉快的玩耍了。

参考:

http://www.jianshu.com/p/35ca63ec0d8e

http://www.bkjia.com/xtzh/1004181.html?qqdrsign=03cf6

局域网搭建IOS应用在线安装环境相关推荐

  1. 服务器搭建苹果ipa包在线安装环境

    类似蒲公英的苹果应用在线安装环境,能方便小团队开发分发测试包. 我们利用自己的服务器搭建一个这样的服务. 一.环境要求 1.服务器 域名(可自己买一个域名,作为程序员应该必备一个,域名也不贵,反正贵的 ...

  2. 搭建自己的在线IDE

    搭建自己的在线IDE 什么是在线IDE 环境准备 软件安装 执行在线安装 配置环境 编写Python脚本运行 添加其他语言支持 C/C++语言支持 Java语言支持 什么是在线IDE 在线IDE,顾名 ...

  3. 通过OTA的方式在局域网分发iOS应用

    公司的一个项目有Android和iOS的app,Android的下载和安装都很方便,不过iOS有些麻烦,因为项目本身有些限制,主要有以下一些障碍: 1.iOS的版本不是通过Appstore分发. 2. ...

  4. 武海滨:沪江如何搭建优秀的在线教育平台

    3月31日,ZEGO Meetup 视频直播+的技术实践之道第三期在上海成功举办,现场吸引了满堂的音视频开发人员到场聆听.会上,如预期一样,么么直播前端团队负责人黄铭新.即构科技资深技术专家和架构师冼 ...

  5. 梦幻诛仙linux纯端架设教程,梦幻诛仙 一键端搭建iOS安卓双端+完整后台源码+各种工具附带视频架设教程...

    游戏说明: 梦幻诛仙一键端搭建iOS安卓双端+完整后台源码+各种工具,视频架设教程 在游戏内当前聊天窗口输入  dmmhzxnb ,开启后台.  提示GM后台已开启. 在左上角Press Enter ...

  6. VMWare虚拟OSX系统搭建ios、iphone开发环境并成功运行模拟器(2016)

    虚拟OSX系统搭建ios.iphone开发环境并成功运行模拟器 搭建ios.iphone开发环境,如果你是土豪,又或者是 愿意砸钱投资.直接买个MacBook就可以了.然后从AppStore下载所需的 ...

  7. [facebook-wda]搭建iOS App自动化环境

    搭建iOS App自动化环境 一.测试结构介绍 手机端的WDA Runner(WebDriverAgent)类似于appium测试框架中的 UIAutomator Server,将从客户端接收到的控制 ...

  8. 【已解决】【高速版】如何显示(扫描)局域网中所有的在线主机IP及MAC地址?

    有些时候,我们想知道局域网内的全部在线主机的IP地址,以进行后续相关操作; 虽然大部分情况下,路由器管理页面或者路由器APP可以得到这些主机的IP地址及在线状态; 但是有一些例外,比如: 1. 某些主 ...

  9. 如何搭建一套在线网校系统?需要哪些功能?

    现在做在线教育的人真的是越来越多了,不过相信很多刚刚入门的小伙伴,会在搭建在线网校系统的地方卡住. 一是可能没有相关的开发经验: 二是可能没有找到好的方案和工具. 如何搭建一套在线网校系统?需要哪些功 ...

最新文章

  1. 【基础积累】1x1卷积到底有哪些用处?
  2. vbs文件放在java工程中如何调用_Eclipse软件导入Java工程文件的操作方法。
  3. xp 硬盘安装linux双系统,WinXP硬盘安装Ubuntu 11.10双系统全程图解
  4. JS----javascript中使用reverse()方法反转数组
  5. 用jekyll制作高大上的网站(二)——实际应用
  6. C语言实现01字符转比特流
  7. 10 个理由让你继续干 IT
  8. Math: Fibonacci
  9. gpt分区安装的Win7激活工具
  10. 门电路逻辑符号大全(三态门,同或门,异或门,或非门,与或非门, 传输门,全加器,半加器等)
  11. C++ MFC与三菱PLC通讯
  12. qq同步android 2.2,支持手机号注册!Android QQ同步助手2.1发布
  13. Makefile 的解读(一)
  14. Problem L: 数羊————思维不严谨
  15. 公网与私网地址转换——NAT技术的使用小技巧,超简单!!!
  16. 专业级游戏测试书上架:精通游戏测试(第3版)
  17. 为什么局部下降最快的方向就是梯度的负方向?
  18. HDU4598 Difference(差分约束)
  19. UniApp video 使用
  20. 如何在Release状态下进行调试

热门文章

  1. 前端三剑客 HTML、CSS、JavaScript 入门到上手
  2. 复试机试【XN2018】
  3. Python 调用WebService接口出错-suds.transport.TransportError: HTTP Error 401: Unauthori
  4. 1.5. 唤醒任务:TTWU(try_to_wake_up)
  5. Java解析PDF文件(PDFBOX、itext解析PDF)导出PDF中的子图片,去除PDF中的水印
  6. Rasa课程、Rasa培训、Rasa面试、Rasa实战系列之Finding Unexpected Intents
  7. 全球60个线上学习资源网站分享!
  8. Unacceptable certificate: CN=GlobalSign Domain Validation CA - SHA256 - G2, O=GlobalSign nv-sa, C=BE
  9. Python数据分析及可视化的基本环境
  10. hinet邮箱密码可以破解?