首页 > 编程知识 正文

自己搭建服务器,自己搭建家庭云服务器

时间:2023-05-05 23:08:28 阅读:227373 作者:1550

上线以后的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的下载:

<a rel="external nofollow" href="itms-services://?action=download-manifest&amp;url=https://192.168.1.44/app.plist">点击下载</a>




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


<!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.44/app.ipa</string>

               </dict>

           </array><key>metadata</key>

           <dict>

               <key>bundle-identifier</key>

               <string>com.myapp</string>

               <key>bundle-version</key>

               <string>4</string>

               <key>kind</key>

               <string>software</string>

               <key>subtitle</key>

               <string>我的app</string>

               <key>title</key>

               <string>我的app<span style="font-family: Arial, Helvetica, sans-serif;"></string></span>

           </dict>

       </dict>

   </array>

</dict>

</plist>







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


版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。