This commit is contained in:
2026-06-24 17:45:24 +08:00
commit bc0223bf07
16 changed files with 1553 additions and 0 deletions
+190
View File
@@ -0,0 +1,190 @@
# 软件发布平台
一个简单易用的软件发布管理系统,支持多版本管理和在线下载。
## 功能特性
**后台管理系统**
- 用户登录验证(默认用户名/密码:admin/admin
- 上传 APK 文件到服务器
- 版本管理(查看、删除)
- 网站配置(标题、说明、Logo
**前端展示**
- 显示所有已发布的应用版本
- 最新版本优先显示
- 版本详情(版本号、描述、上传时间、文件大小)
- 一键下载功能
**数据存储**
- 使用 SQLite 文件数据库
- APK 文件存储在 `data/apps/` 目录
- Logo 文件存储在 `data/uploads/` 目录
## 目录结构
```
php_app_downloader/
├── index.php # 主页(显示所有版本)
├── download.php # 下载接口
├── logo.png # 默认 Logo
├── admin/ # 管理后台
│ ├── index.php # 登录页面
│ ├── dashboard.php # 管理面板
│ ├── upload.php # 文件上传处理
│ ├── config.php # 配置管理
│ ├── delete.php # 删除应用
│ ├── logout.php # 退出登录
│ └── auth.php # 认证中间件
├── includes/ # 共享代码
│ ├── db.php # 数据库连接
│ └── functions.php # 通用函数
├── data/ # 数据存储(需要写权限)
│ ├── apps/ # APK 文件
│ ├── uploads/ # 上传的 Logo
│ └── database.db # SQLite 数据库
└── assets/
└── admin.css # 管理后台样式
```
## 使用说明
### 1. 环境要求
- PHP 7.0+
- SQLite 支持(PHP 默认包含)
- Web 服务器(Apache/Nginx
### 2. 安装步骤
1. 将项目文件上传到 Web 服务器
2. 确保 `data/` 目录有写权限(已设置为 777
3. 访问网站首页,数据库会自动初始化
### 3. 管理后台
访问 `/admin/` 进入管理后台
**默认登录信息:**
- 用户名:`admin`
- 密码:`admin`
**功能说明:**
#### 上传应用
1. 在管理面板点击"上传新应用"
2. 选择 APK 文件
3. 填写版本号(可选)
4. 填写版本描述(可选)
5. 点击"上传应用"
#### 管理版本
- 查看所有已发布的版本
- 下载任意版本
- 删除不需要的版本
#### 网站配置
1. 点击"网站配置"
2. 修改网站标题
3. 修改软件说明
4. 上传新的 Logo(支持 JPG/PNG/GIF
5. 点击"保存配置"
### 4. 前端使用
- 访问网站首页查看所有版本
- 点击"立即下载"按钮下载对应版本
- 右下角有"管理后台"快捷入口
## 数据库结构
### apps 表
存储应用版本信息
| 字段 | 类型 | 说明 |
|------|------|------|
| id | INTEGER | 主键,自增 |
| filename | TEXT | 存储的文件名 |
| original_name | TEXT | 原始文件名 |
| version | TEXT | 版本号 |
| description | TEXT | 版本描述 |
| upload_time | DATETIME | 上传时间 |
| file_size | INTEGER | 文件大小(字节)|
### config 表
存储网站配置
| 字段 | 类型 | 说明 |
|------|------|------|
| key | TEXT | 配置键(主键)|
| value | TEXT | 配置值 |
**预设配置项:**
- `site_title` - 网站标题
- `site_description` - 软件说明
- `logo_path` - Logo 路径
## API 接口
### 下载接口
`GET download.php?id={app_id}`
**参数:**
- `id` (可选) - 应用 ID,不传则返回最新版本
**响应示例:**
```json
{
"success": true,
"file": "data/apps/1719223456_app.apk",
"filename": "app.apk",
"version": "1.0.0",
"date": "2024-06-24 17:30:56"
}
```
## 安全建议
1. **修改默认密码**
- 当前密码硬编码在 `admin/index.php`
- 建议修改为复杂密码
2. **限制文件上传**
- 当前仅允许 `.apk` 文件
- 可根据需要调整文件类型限制
3. **数据备份**
- 定期备份 `data/` 目录
- 包含数据库和所有上传的文件
4. **访问控制**
- 建议通过 Web 服务器配置限制 `/admin/` 访问
- 可添加 IP 白名单
## 技术栈
- **后端:** PHP + SQLite
- **前端:** 原生 HTML/CSS/JavaScript
- **样式:** 现代化渐变设计,响应式布局
## 更新日志
### v2.0 (2024-06-24)
- ✅ 新增管理后台系统
- ✅ 新增用户登录功能
- ✅ 支持多版本管理
- ✅ 支持在线上传 APK
- ✅ 支持网站配置管理
- ✅ 重写前端样式
- ✅ 使用 SQLite 数据库
### v1.0
- 基础下载功能
- 显示最新版本
## 许可证
MIT License
---
如有问题或建议,欢迎反馈!