自己搭建服务器提供IOS IPA包下载

上线以后的ios app可以在store上下载。但是上线之前的app,安装各种麻烦,比如开发测试、demo演示等等的。 自己搭建https服务器,来解决这个问题。



前提:

ios设备 udid 绑定给app,这个是必须的,不绑定的设备下载不了,绑定过程这里也不提了,ios同学们应该知道

下载app之前,先要在ios设备上安装https证书,这个下面说怎么弄



1.https搭建



本文中的搭建环境:Centos+nginx

apache下的配置据说和nginx有点不一样 不过我没有尝试

nginx安装过程省略吧。 



https证书制作:

nginx/conf/ssl/ 下新建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;



保存后退出,执行脚本,会提示一大堆要输入的信息,公司名称、密码什么的,自己看着输吧。



nginx.conf 中加一行,


include sites/https.conf; 


这是include下https的配置文件

注:我已经配置了nginx的http服务,直接把https请求通过proxy_pass 代理到http上了。大家可以不用这么麻烦,网上找一下nginx添加https支持,按教程做就可以了。




https.conf放到nginx/conf/sites/ 下面。内容如下:

server {

        listen       443 ssl;

        server_name  localhost;



        ssl                  on;

        ssl_certificate    ssl/server.crt;

        ssl_certificate_key  ssl/server.pem;



        ssl_session_timeout  5m;



        #ssl_protocols  SSLv2 SSLv3 TLSv1;

        ssl_protocols       SSLv3 TLSv1 TLSv1.1 TLSv1.2;

        ssl_ciphers         AES128-SHA:AES256-SHA:RC4-SHA:DES-CBC3-SHA:RC4-MD5;

        ssl_prefer_server_ciphers   on;

        location / {

         ### force timeouts if one of backend is died ##

                proxy_next_upstream error timeout invalid_header http_500 http_502 http_503;



                ### Set headers ####

                proxy_set_header Host $host;

                proxy_set_header X-Real-IP $remote_addr;

                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;



                ### Most PHP, Python, Rails, Java App can use this header ###

                proxy_set_header X-Forwarded-Proto http;



                ### By default we don't want to redirect it ####

                proxy_redirect     off;



                proxy_pass http://localhost:8012/;



    }



}



这里两个配置注意下,

 ssl_certificate ssl/server.crt;

 ssl_certificate_key ssl/server.pem; 

就是刚才生成的https证书的路径





 现在可以启动nginx了 





2 配置证书可下载

把刚才生成的https证书目录下的ca.crt证书复制到服务根目录下面 ,让终端可以访问下载到

比如 http://192.168.1.44/ca.crt,





安装ipa之前,要先让终端机通过这个地址下载并安装证书





3.配置ipa下载

把plist文件和ipa文件,放到https服务下面,这两个文件从哪来的,就不说了





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

点击下载




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


   items

  

      

           assets

          

              

                   kind

                   software-package

                   url

                   https://192.168.1.44/app.ipa

              

           metadata

          

               bundle-identifier

               com.myapp

               bundle-version

               4

               kind

               software

               subtitle

               我的app

               title

               我的app

          

      

  







好了,现在访问https://192.168.1.44/download.html,点击下载,就可以安装了。再次提示:别忘了下载证书


你可能感兴趣的:(ios,ipa,ipa下载)