当我们开发的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;
}

至此已经可以使用了。

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

最新文章

  1. jquery 单击和双击事件冲突解决方案
  2. STM32F4读写内部FLASH【使用库函数】
  3. Linux 下从头再走 GTK+-3.0 (五)
  4. C#------获取最后一个&quot;/&quot;字符后面的所有内容
  5. 《Linux内核设计与实现》CHAPTER5阅读梳理
  6. sublime text 3 设置
  7. Already tried 0 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep解决方法
  8. Linux bash重拾 2016-8-16
  9. 【转载】python:特殊函数使用方式
  10. Tickets
  11. 防止SSH自动断线
  12. 剑指Offer——网易笔试之解救小易——曼哈顿距离的典型应用
  13. 问题解决--无法解析的外部符号 _imp_XXXXXXXXX
  14. python中封装、继承、多态
  15. GIT 数据结构
  16. Linux上iptables防火墙的基本应用教程
  17. BOM下的属性和方法---下
  18. Java之旅_面向对象_抽象类
  19. Python基础3切片,字符串的方法,for 循环
  20. 分布式配置 tachyon 并执行Hadoop样例 MapReduce

热门文章

  1. POJ 2299 【树状数组 离散化】
  2. Pod常使用命令
  3. 【遥感专题系列】微波遥感(三、SAR图像特征)
  4. Android学习笔记_36_ListView数据异步加载与AsyncTask
  5. ProjectServer如何创建时间表
  6. C++最接近整数的浮点运算
  7. 【Nowcoder 上海五校赛】1 + 2 = 3?(斐波那契规律)
  8. BZOJ1030: [JSOI2007]文本生成器(AC自动机)
  9. spring cloud 学习之路由网关(zuul)
  10. Mac系统升级后在终端输入git命令时遇到的问题