当我们开发的APP多的时候,把所有的APK文件统一放到一个目录中管理,是一个不错的选择;

管理的方法有很多,这里说一种:

1.、创建目录结构,先创建根目录download,在根目录中创建项目目录,在项目目录中存放不同版本的APK文件,如下图:

2、在每个根目录里创建一个list.txt文件,list.txt里边记录各个版本的APK文件名,每行记录一条记录;

3、在根目录里创建一个index.php文件,根据list.txt文件查找最新的APK文件名,代码如下:

<?php
header("Content-type: text/html; charset=utf-8");
if($path=$_SERVER['REQUEST_URI']){ if(is_dir(__DIR__.$path)){//指向目录的url,如download.xxx.com/source
$file=__DIR__.$path.'/list.txt';
if(file_exists($file)){//list.txt文件存在
$f=file($file);//把list.txt文件读入一个数组中
if($count_f=count($f)){//
$f_name= $f[$count_f-1];//取最后一个元素,即list.txt最后一行 $path=trim($_SERVER['SERVER_NAME'].$path.$f_name);
exit("<script>location.href='http://{$path}'</script>");//将url指向文件,若用header()直接下载,在微信中不能直接打开;
} }
}
exit("文件不存在!");
}

4.nginx服务器配置设置,当请求的url路径无后缀时指向index.php文件:

#查找 nginx 配置目录
nginx -t
#打开配置文件
vi download.conf
#在文件件中添加如下代码,
location ~ .*\/$
{
try_files '' /index.php;
}

至此已经可以使用了。

另外的方法还可以使用管理系统+数据库的方法进行管理,文件统一由后台管理上传,个人觉得这种方法更佳,但人在江湖身不由已;

PHP管理供下载的APK文件的更多相关文章

  1. 基于nginx实现二维码下载安装apk文件

    将apk文件置于nginx目录下 <!--进入nginx安装路径--> /usr/local/nginx <!--新建放apk的目录--> mkdir -p resources ...

  2. android 开发 程序中下载安装APK文件 问题汇总 解析程序包时出现问题

    1 若把APK文件保存到应用程序的files目录下,则一定注意保存时使用 FileOutputStream os = openFileOutput(fileName, MODE_WORLD_READA ...

  3. gplaycli—— 用于从 GooglePlayStore 中下载和管理 Apk 文件的命令行工具

    gplaycli-- 用于从 GooglePlayStore 中下载和管理 Apk 文件的命令行工具 这个 GooglePlay市场 中 https://play.google.com/store/a ...

  4. 上载android应用的apk文件变成了zip-网下转载的解决方案

    下载android应用的apk文件变成了zip--网上转载的解决方案 下载android应用的apk文件变成了zip--网上转载的解决方案 解决方案一. 最近把开发的android应用放在公司网站上, ...

  5. android手机自带浏览器无法识别apk文件

    在项目中遇到安卓自带浏览器下载成功 , 但无法打开已下载的APK文件自动安装的问题,特别是三星系列的手机普遍存在这种问题,google后发现也有朋友遇到类似的问题: http://bbs.csdn.n ...

  6. 在Android studio模拟器中运行apk文件

    菜鸟级玩家比看文. win平台下下载的apk文件,怎么能模拟运行出来. 首先得安装Android SDK,不会的自行百度一下. 接下来,打开AVD模拟器,自己创建一个模拟器(过程自己实践) 然后,将你 ...

  7. Android安装包apk文件在某些版本操作系统上安装解析包出错问题的解决办法

    当我们将Android升级功能的中的下载新版本apk文件存放在data/data/xxx.apk位置时,在有的些版本的手机中安装可能会出现安装包解析出错的问题,对于该问题的解决方案是提升该文件的权限. ...

  8. 如何设置让iis服务器支持.apk文件的下载

    随着智能手机的普及,越来越多的人使用手机上网,很多网站也应手机上网的需要推出了网站客户端,.apk文件就是安卓(Android)的应用程序后缀名,默认情况下,使用IIS作为Web服务器的无法下载此文件 ...

  9. IIS 服务器 支持.apk文件的下载

    IIS服务器不能下载.apk文件的解决办法:既然.apk无法下载是因为没有MIME,那么添加一个MIME类型就可以了 随着智能手机的普及,越来越多的人使用手机上网,很多网站也应手机上网的需要推出了网站 ...

随机推荐

  1. MariaDB修改端口号

    修改端口号 打开my.ini文件

  2. 卸载由源码编译安装的软件(如OpenCV)

    看安装软件的时候有没有使用--prefix这个参数,如果有那就把你指定的文件给删除了就行了. 如果没有用这个参数就麻烦一点了,那就进入到软件解压后的目录,执行sudo make uninstall看能 ...

  3. 【字符串】跳来跳去的KMP匹配

    原理: 不给予证明啦(懒得一批 但是代码中有给还算详细的注释 参考:https://www.cnblogs.com/yjiyjige/p/3263858.html 模板题: 洛谷P3375: http ...

  4. redis的数据结构与命令

    以下部分文档,摘自51cto讲师:汤小洋 redis提供五种数据类型:string,hash,list,set及zset(sorted set). Redis数据就是以key­ value形式来存储的 ...

  5. Angularjs实例2

    <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...

  6. Flask—03-bootstrap与表单

    bootstrap与表单 Bootstrap是美国Twitter公司的设计师Mark Otto和Jacob Thornton合作基于HTML.CSS.JavaScript 开发的简洁.直观.强悍的前端 ...

  7. Oracle 用户、授权、角色管理

    Oracle 用户管理 一.创建用户的Profile文件SQL> create profile student limit // student为资源文件名FAILED_LOGIN_ATTEMP ...

  8. zepto 基础知识(2)

    20.append append(content) 类型:self 在每个匹配的元素末尾插入内容(内部插入).内容可以为html 字符串.dom节点,或者节点组成的数组. $('ul').append ...

  9. 小胖办证 wzoi

    小胖办证 题目描述: xuzhenyi要办个签证.办证处是一座M层的大楼,1<=M<=100. 每层楼都有N个办公室,编号为1..N(1<=N<=500).每个办公室有一个签证 ...

  10. 利用login-path对MySQL安全加固

      Preface       Connection security is  one of the most important safety strategies which we should ...