局域网搭建IOS应用在线安装环境
2016-01-10 14:19
330 查看
前言
一般公司在开发IOS的APP,发布测试版本,这是一个很繁琐的过程,对于一般的公司基本上就是把测试机加入开发列表中,然后打包APP,发布到网盘,或者发到QQ上,供测试人员下载安装测试。这绝对是一个崩溃的过程。
解决方案
RT. 搭建IOS应用的在线安装环境,等环境搭建好,把发布位置告知APP开发人员,IOSAPP开发人员可以通过命令行打包APP,并且使用scp 命令 上传安装包。然后通知测试人员使用Safari浏览器打开地址,在线安装就可以了,很大程度的减少了无效工作量,并且非常方便。
好了,接下来开始:
环境: centos 7 httpd openssl https
这样小伙伴们就可以愉快的玩耍了。
参考:
http://www.jianshu.com/p/35ca63ec0d8e http://www.bkjia.com/xtzh/1004181.html?qqdrsign=03cf6
一般公司在开发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.types sudo 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.origin ssl.conf DocumentRoot "/var/www/html" ServerName 192.168.1.101 SSLCertificateFile /etc/httpd/ssl/server.crt SSLCertificateKeyFile /etc/httpd/ssl/server.key http.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自动化测试工具Ranorex简介
- iOS CLLocationManager定位
- iOS开发之让你的应用“动”起来
- iostat
- iOS7.1以及iOS9.2与之前的不同
- iOS- 如何集成支付宝
- iOS 5 数组转换成字典形式并且排序,然后删除指定字典让中的内容
- IOS开发之----四舍五入问题
- 如何简单地在特定的某些控制器中隐藏导航栏
- iOS - 判断设备类型/第一响应者
- iOS NSUserDefaults数据持久化存储
- iOS开发实践之多线程(NSThread)
- IOS实现简单的进度条功能
- IOS学习笔记之协议与委托
- IOS 移除storyboard
- iOS --- OpenGLES之顶点缓存对象VBO
- ios 控件
- IOS实现验证码倒计时功能(一)
- IOS 移除storyboard
- iOS开发之NSLayoutConstraint