前端时间公司官方换了服务器,由Apache换成了Nginx。大概看了下,程序运行,文件下载都没问题,过了!正常上线,OK!
But,今天突然发现,在IE浏览器下下载APK和IPA的文件是会被自动识别为ZIP,也就是直接下载的apk或者ipa下载下来后都变成了ZIP,怎么个情况,这个怎么让用户安装啊,虽然你把后缀该回apk后还能继续安装,但是那个客户晓得这个啊。疏忽!
搜了下,解决方案如下:在Nginx安装目录下的conf/mime.types文件的对应位置,加入如下两段代码
application/vnd.android.package-archive apk;
application/iphone pxl ipa;
原因呢是:apk和ipa文件本身就是压缩包,而大部分用户的电脑上都安装了WinRAR的解压缩软件,那么IE下载的时候就直接把apk等文件直接下载成压缩包了,所以解决的方法就是在服务环境中配置对应的文件格式的Mine,让其在下载的时候能认出来文件格式就好了。
附一些文件格式在nginx的mime.types中的配置
text/vnd.sun.j2me.app-descriptor jad;
application/java-archive jar war ear;
application/x-java-archive-diff jardiff;
application/vnd.android.package-archive apk;
application/vnd.ms-cab-compressed cab;
application/octet-stream bin exe dll;
application/vnd.symbian.install sis;
x-epoc/x-sisx-app sisx;
application/iphone pxl ipa;
application/vnd.palm prc pdb;
application/vnd.webos.ipk ipk;
application/vnd.rim.cod cod;
application/mrp mrp;
x-nokia-widget wgz;
application/octet-stream deb; http://aiyouu.net/nginx-service-app-download/