为了测试上线之前的ios app可以在store上下载, 自己搭建https服务器,来解决测试这个问题。

1.    https搭建

搭建环境:Centos+nginx

下载nginx安装包:wget http://nginx.org/download/nginx-1.14.0.tar.gz

tar -zxvf nginx-1.14.0.tar.gz
cd nginx-1.14.0
./configure --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --pid-path=/usr/local/nginx/conf/nginx.pid --lock-path=/var/lock/nginx.lock --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --with-http_gzip_static_module --http-client-body-temp-path=/var/temp/nginx/client --http-proxy-temp-path=/var/temp/nginx/proxy --http-fastcgi-temp-path=/var/temp/nginx/fastcgi --http-uwsgi-temp-path=/var/temp/nginx/uwsgi --http-scgi-temp-path=/var/temp/nginx/scgi --with-http_ssl_module
make
make install   

2.新建build.sh 用来创建证书,脚本内容如下:

openssl genrsa -des3 -out server.key 2048 ;
openssl rsa -in server.key -out server.key;
openssl req -new -x509 -key server.key -out ca.crt -days 3650;
openssl req -new -key server.key -out server.csr;
openssl x509 -req -days 3650 -in server.csr -CA ca.crt -CAkey server.key -CAcreateserial -out server.crt;
cat server.key server.crt >server.pem;

3、编辑/usr/local/nginx/conf/nginx.conf主配置文件,具体配置和相关优化如下:

vi   /usr/local/nginx/conf/nginx.conf

worker_processes  auto;
worker_rlimit_nofile 65535;
user nobody;
error_log       /var/log/nginx/error.log;
events {use epoll;worker_connections 65535;multi_accept on;}http {include mime.types;default_type application/octet-stream;charset utf-8;map $http_x_forwarded_for  $clientRealIp {""    $remote_addr;~^(?P<firstAddr>[0-9\.]+),?.*$    $firstAddr;}log_format  access  '$clientRealIp - $remote_user [$time_local] "$request" ''$status $body_bytes_sent $request_time  "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for" $proxy_add_x_forwarded_for ';           server_names_hash_bucket_size 128;client_header_buffer_size 64k;client_max_body_size 50m;client_body_buffer_size 512k;large_client_header_buffers 4 64k;server_tokens off;sendfile on;tcp_nopush on;tcp_nodelay on;keepalive_timeout 60;ssl_session_cache shared:SSL:50m;ssl_session_timeout 5m;server_name_in_redirect off;proxy_connect_timeout 300;proxy_read_timeout 180;proxy_send_timeout 180;proxy_buffer_size 16k;proxy_buffers 4 64k;proxy_busy_buffers_size 128k;proxy_temp_file_write_size 128k;proxy_temp_path /var/tmp/proxy_temp_dir;proxy_cache_path /var/tmp/proxy_cache_dir levels=1:2 keys_zone=cache_one:1000m inactive=10d max_size=30g;        gzip on;gzip_min_length 1k;gzip_buffers 4 32k;gzip_comp_level 6;gzip_types text/plain text/css text/xml text/javascript application/json application/x-javascript application/xml application/xml+rss;open_file_cache max=204800 inactive=30s;open_file_cache_min_uses 2;open_file_cache_valid 30s;open_file_cache_errors on;limit_conn_zone $binary_remote_addr zone=TotalConnLimitZone:10m ;limit_conn  TotalConnLimitZone  200;limit_conn_log_level notice;limit_req_zone $binary_remote_addr zone=ConnLimitZone:10m  rate=100r/s;limit_req_log_level notice;include vhosts/*.conf;
}

4、编辑/usr/local/nginx/conf/vhosts/web.conf虚拟主机配置文件(vhost文件夹需自己新建)

server {listen 80;server_name www.xxx.vip;server_name xxx.vip;rewrite ^/(.*) https://www.xxx.vip/$1 permanent;}server {listen       443;server_name  www.xxx.vip;ssl on;ssl_certificate "/usr/local/nginx/conf/cert/server.pem";   Cert文件夹为证书存放目录,需新建ssl_certificate_key "/usr/local/nginx/conf/cert/server.key";
#        ssl_session_cache shared:SSL:10m;
#        ssl_session_timeout  10m;ssl_ciphers HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers on;root   /usr/local/nginx/html/STKC;}

5、启动nginx,到此nginx+https已配好

启动:/usr/local/nginx/sbin/nginx

重启:/usr/local/nginx/sbin/nginx –s reload

6、配置ipa下载

新建/usr/local/nginx/html/ios文件夹 存放plist文件和ipa文件

新建https://192.168.3.67/index.html 网页,网页中添加plist的下载:

<a href="itms-services://?action=download-manifest&url=https://192.168.3.67/app.plist">点击下载</a>

plist 文件里,需要修改下ipa的下载路径,文件内容如下

<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.3.67/app.ipa</string></dict></array><key>metadata</key><dict><key>bundle-identifier</key><string>app的id</string><key>bundle-version</key><string>app版本号</string><key>kind</key><string>software</string><key>title</key><string>app标题<span style="font-family: Arial, Helvetica, sans-serif;"></string></span></dict></dict></array>
</dict>
</plist>

7、ipa下载测试

服务器:

将前面生成的ca.crt证书文件放到/usr/local/nginx/html

手机:

第一步:在苹果手机上打开sofair浏览器,访问https://192.168.3.67/ca.crt安装证书

第二步:打开设置-通用-关于本机-证书信任设置 里面找到根证书,打开信任

测试:访问https://192.168.3.67/

搭建服务器提供IOS IPA包下载相关推荐

  1. ios 隔空投安装ipa_iOS 安装自己服务器上的IPA包

    如何从自己的服务器上下载苹果的IPA包,安装到苹果手机上? 经过企业证书签名的IPA包: 创建一个plist文件,内容如下: assets kind software-package url http ...

  2. iOS企业包下载安装

    当客户端完成开发和测试之后,准备上线给用户使用,就需要提供下载渠道,上传到「应用商店」和「App Store」是很常见的做法,但是今天我们要来聊一下 iOS 企业包的下载方式. 一.背景介绍 1.An ...

  3. jenkins扫码安装iOS ipa包实现关键技术点

    问题背景 在完成iOS APP持续集成打包的需求后,一直想实现APP扫码安装,方便开发和测试调试APP.但因为没有研发人员的配合,只能拖到新来的研发同事进场,我们一起克服各种问题实现了这个功能. 不想 ...

  4. qq游戏大厅 for linux,QQ游戏(wine)版邀请使用,提供QQGame-wine deb包下载

    QQ游戏(wine)版邀请你测试使用,当前提供了com.qqgame.deepin_5.24deepin0_i386.deb包下载,从现在起,可以在Deepin等Linux系统上玩欢乐斗地主了.关于w ...

  5. ios系统安装包下载_iOS 屏蔽系统升级,描述文件版本已复活,无需越狱,请速度下载!...

    沉寂已久的老方法,利用描述文件屏蔽 iOS 系统更新,目前已经正式恢复,再也不担心会自动下载更新包啦. 以往都是安装 tvOS 系列的描述文件,绕过苹果验证更新,从而达到阻止系统升级的目的,但是自 i ...

  6. ios自己搭建服务器证书,iOS一步一步实现Https自建证书校验

    oooO ↘┏━┓ ↙ Oooo ( 踩)→┃你┃ ←(死 ) \ ( →┃√┃ ← ) / _)↗┗━┛ ↖(_/ 我觉得https是iOS开发者要踩的最大的一个坑了,每每看他人写的博客都是只讲理论 ...

  7. 苹果手机ios搭建服务器linux,iOS 利用CocoaHttpServer搭建手机本地服务器

    1.首先导入第三方 目录结构 屏幕快照 2017-07-25 下午1.39.53.png 然后导入你需要加载的html资源 17656F3B-8000-42A3-BA37-182924DAA1CF.p ...

  8. 如何搭建服务器 无线传输,iOS 本地搭建服务器使用http传送(wifi快传)

    1.使用第三方的框架:CocoaHTTPServer 2.调用代码,我的百度网盘 _httpserver = [[HTTPServer alloc] init]; [_httpserver setTy ...

  9. Centos7 IOS镜像包下载

    Centos 7.9 网易开源镜像 yyds

  10. IOS客户端app在线安装ipa包,

    在github上建立安装需要的plist文件, <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE ...

最新文章

  1. Nginx在Windows系统和Linux系统下的重启
  2. 生产订单总目标成本为0
  3. 二进制查找替换常用函数
  4. 洛谷 - P4016 负载平衡问题(最小费用最大流)
  5. DRBD的安装与配置
  6. SAP各种产品中的客户主数据模型建模详解
  7. 你还会写这段C51程序吗?
  8. 软件测试基础知识(三)
  9. Python花式编程案例锦集(4)
  10. PHP 中 this,self,parent 的区别、用法
  11. 欧姆龙cp1h指令讲解_欧姆龙plc指令讲解.ppt
  12. Cordova 插件详解
  13. Eviews10 如何将季度数据转为月度数据(低频转高频)
  14. 计算机信息系统集成高级工程师,软考信息系统项目管理师(高级资格/高级工程师)简介...
  15. QQ音乐、网易云音乐、酷狗音乐歌单导入到Spotify
  16. pip list outdated pacakge and update
  17. 【线上直播ING】2016互联网金融应用发展半年报
  18. 佐治亚大学提供金融科技学位课程
  19. CSS画等腰三角形与直角三角形
  20. 【数据结构】节点和结点,到底怎么区分?

热门文章

  1. CTex winEdit报错“系统找不到指定文件”怎么办
  2. excel高级筛选怎么用_Excel筛选功能这样用,再多数据我也不惧了!
  3. 阿里云服务器安全组入方向和出方向默认规则
  4. VMware虚拟机操作汇总
  5. 房地产开发商崩盘样本:楼盘捂了两年,欠40亿巨债
  6. 利用计算机进行有理数的运算教学反思,有理数乘法分配律教学反思
  7. Gradle 插件 + ASM 实战 - 监控图片加载告警
  8. Xcode5 创建模板和UIView 关联XIB
  9. zencart模板列表下载地址
  10. 短视频矩阵/短视频SEO矩阵系统源码/系统搭建