5b009b838b215936b3e173007a87266b67113bc7
App Store 项目
这是一个基于 PHP 7.4 的 App Store 项目,使用 Bootstrap 实现 Fluent Design 风格界面,数据存储采用 MySQL 数据库。
项目结构
app2/
├── config.php # 配置文件,包含数据库和管理员信息
├── app_store.sql # 数据库初始化 SQL 文件
├── index.php # 首页
├── app.php # App 信息页
├── admin/ # 管理员后台目录
│ ├── addapp.php
│ ├── deleteapp.php
│ ├── editapp.php
│ ├── index.php
│ ├── login.php
│ ├── manage_tags.php
│ ├── review_apps.php
│ └── system_info.php
├── developer/ # 开发者后台目录
│ ├── dashboard.php
│ ├── edit_app.php
│ ├── login.php
│ ├── logout.php
│ ├── profile.php
│ ├── register.php
│ └── upload_app.php
├── vendor/ # Composer 依赖
├── includes/ # 通用包含文件
├── api.php # API 接口文件
├── styles.css # 自定义 CSS 文件
├── images/ # 存储 App 预览图片和年龄分级 SVG
│ ├── age_3plus.svg
│ ├── age_7plus.svg
│ ├── age_12plus.svg
│ ├── age_17plus.svg
├── files/ # 存储 App 文件
环境要求
- PHP 7.4+
- MySQL 5.7+
- Composer
- Node.js (可选,用于前端资源构建)
- Web 服务器(如 Apache 或 Nginx)
快速启动指南
对于有经验的开发者,可按照以下步骤快速部署:
# 1. 克隆项目并进入目录
git clone <repository-url> app2
cd app2
# 2. 创建并配置环境文件
copy config.example.php config.php
# 编辑config.php设置数据库和邮件信息
# 3. 创建数据库并导入结构
mysql -u root -p -e "CREATE DATABASE your_db_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"
mysql -u root -p your_db_name < app_store.sql
# 4. 安装依赖并设置权限
composer install
icacls files /grant Users:(OI)(CI)W
icacls images /grant Users:(OI)(CI)W
# 5. 启动开发服务器
php -S localhost:8000
访问 http://localhost:8000 开始使用,管理员后台地址:http://localhost:8000/admin
详细安装教程
1. 环境准备
确保您的系统满足以下要求:
- PHP 7.4+(推荐PHP 8.0+)
- MySQL 5.7+ 或 MariaDB 10.2+
- Composer(PHP依赖管理工具)
- Web服务器(Apache/Nginx/IIS)或PHP内置服务器
- Git(可选,用于版本控制)
检查PHP环境
打开命令提示符,输入以下命令验证PHP版本:
php -v
# 应显示PHP 7.4.0或更高版本
# 检查必要扩展
php -m | findstr /i "mysqli pdo_mysql json curl fileinfo"
# 确保以上扩展均已安装
2. 获取项目代码
选择以下任一方式获取代码:
方式一:使用Git克隆(推荐)
git clone <repository-url> app2
cd app2
方式二:手动下载
- 从项目仓库下载ZIP压缩包
- 解压到本地目录(如
c:\web\app2) - 打开命令提示符,进入项目目录:
cd c:\web\app2
3. 数据库配置
创建数据库
- 登录MySQL控制台:
mysql -u root -p - 创建数据库(将
your_db_name替换为您喜欢的数据库名称):CREATE DATABASE your_db_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; exit
导入数据库结构
mysql -u root -p your_db_name < app_store.sql
注意:请确保在导入前替换命令中的
your_db_name为您实际创建的数据库名称
4. 应用配置
创建配置文件
如果项目中存在config.example.php:
copy config.example.php config.php
如果不存在,请手动创建config.php文件并添加以下内容:
<?php
// 数据库配置
define('DB_HOST', 'localhost');
define('DB_USER', 'root');
define('DB_PASS', 'your_database_password');
define('DB_NAME', 'your_db_name');
define('APP_URL', 'http://localhost'); // 应用基础URL
define('ADMIN_EMAIL', 'admin@example.com'); // 默认管理员邮箱
define('ADMIN_PASSWORD', 'admin123'); // 默认管理员密码(首次登录后必须修改)
// 邮件服务配置(用于开发者注册验证)
define('SMTP_HOST', 'smtp.example.com');
define('SMTP_PORT', 465);
define('SMTP_USER', 'your_email@example.com');
define('SMTP_PASS', 'your_email_password');
define('SMTP_ENCRYPTION', 'ssl'); // 通常为ssl或tls
define('DEBUG_MODE', true); // 开发环境设为true,生产环境设为false
?>
配置参数说明
| 参数 | 说明 | 示例值 |
|---|---|---|
| DB_HOST | 数据库主机地址 | localhost |
| DB_USER | 数据库用户名 | root |
| DB_PASS | 数据库密码 | your_actual_password |
| DB_NAME | 数据库名称 | app_store |
| APP_URL | 应用访问URL | http://localhost/app2 |
| DEBUG_MODE | 调试模式开关 | true/false |
5. 安装依赖
使用Composer安装项目依赖:
composer install
如果没有安装Composer,请先从 https://getcomposer.org/ 下载并安装
6. 设置目录权限
项目需要对以下目录有写入权限:
files/:存储上传的应用文件images/:存储应用截图和图标
图形界面方式(推荐)
- 在文件资源管理器中找到项目目录
- 右键点击
files文件夹,选择属性 - 切换到安全选项卡,点击编辑
- 选择当前用户,勾选写入权限,点击确定
- 对
images文件夹执行相同操作
命令行方式
icacls files /grant Users:(OI)(CI)W
icacls images /grant Users:(OI)(CI)W
7. 配置Web服务器
选项A:使用PHP内置开发服务器(推荐用于开发)
php -S localhost:8000
然后在浏览器中访问:http://localhost:8000
选项B:配置Apache服务器
- 确保
mod_rewrite模块已启用 - 创建虚拟主机配置:
<VirtualHost *:80>
ServerName appstore.local
DocumentRoot "d:/app2"
<Directory "d:/app2">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
- 修改
hosts文件添加:127.0.0.1 appstore.local - 重启Apache,访问 http://appstore.local
选项C:配置Nginx服务器
server {
listen 80;
server_name appstore.local;
root d:/app2;
index index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
8. 首次使用与安全设置
管理员账号初始化
- 访问管理员登录页面:http://localhost:8000/admin/login.php
- 使用默认账号登录:
- 用户名:
admin@example.com(来自config.php中的ADMIN_EMAIL) - 密码:
admin123(来自config.php中的ADMIN_PASSWORD)
- 用户名:
- 重要:登录后立即点击右上角头像,选择修改密码,设置强密码
安全建议
- 生产环境中设置
define('DEBUG_MODE', false); - 定期备份数据库
- 不要将
config.php提交到版本控制系统 - 保持PHP和所有依赖包为最新安全版本
使用教程
开发者功能
注册开发者账号
- 访问开发者注册页面:http://localhost:8000/developer/register.php
- 填写注册信息,提交后系统会发送验证邮件
- 点击邮件中的验证链接激活账号
上传新应用
- 登录开发者后台:http://localhost:8000/developer/login.php
- 点击上传新应用按钮
- 填写应用信息:
- 应用名称、描述、版本号
- 选择应用类别和年龄分级
- 上传应用图标(推荐尺寸:512x512px)
- 上传应用截图(最多5张)
- 上传应用安装包(支持.zip格式)
- 点击提交审核,等待管理员审核
管理应用版本
- 在开发者后台点击应用名称进入管理页面
- 点击发布新版本添加应用更新
- 填写版本变更说明和更新内容
- 上传新版本安装包
管理员功能
应用审核
- 登录管理员后台:http://localhost:8000/admin/login.php
- 点击应用审核菜单
- 查看待审核应用列表,点击查看详情
- 审核应用信息和安装包,点击通过或拒绝并填写反馈
管理应用分类
- 在管理员后台点击分类管理
- 可以添加、编辑或删除应用分类
- 设置分类排序和显示状态
系统信息查看
- 在管理员后台点击系统信息
- 查看服务器环境、PHP配置和数据库状态
- 监控应用总数、开发者数量和文件存储使用情况
API使用指南
获取应用列表
GET /api.php?action=list&page=1&limit=10
返回JSON格式的应用列表数据
获取应用详情
GET /api.php?action=app&id=1
返回指定ID的应用详细信息
API响应格式
{
"success": true,
"data": {},
"message": "操作成功"
}
功能说明
- 首页:展示最新 App 列表,包含基本信息和评分。
- App 信息页:显示 App 详细信息、版本历史、预览图片和用户评价,支持用户评分。
- 管理页:管理员可以添加、删除 App,审核应用,管理标签和查看系统信息。
- 开发者后台:开发者可以注册账号、管理应用、上传新版本和查看应用统计。
- API 接口:提供
/api获取 App 列表,/api/app/<编号>获取单个 App 详细信息。
管理员登录
默认管理员账号信息在 config.php 中配置,登录后可访问管理页面。
故障排除
- 数据库导入错误:确保数据库名称为'awa'且已创建,检查SQL文件路径是否正确
- 权限问题:确认
files和images目录权限设置为755 - 邮件发送失败:检查
config.php中的SMTP配置,确保端口(通常465或587)和加密方式正确 - 类找不到错误:运行
composer install确保所有依赖已正确安装
注意事项
- 请确保
files、images目录以及其子目录有足够的写入权限(推荐设置权限为755)。 - 生产环境中必须修改默认管理员密码和数据库连接信息,确保系统安全。
- 邮件服务配置:请在
config.php中正确设置 SMTP 服务器地址、端口、用户名和密码,以确保开发者邮箱验证功能正常工作。
Description
1.0 RC 1
Latest
Languages
JavaScript
74.1%
PHP
9.2%
SCSS
5.6%
Less
5.3%
Python
4.9%
Other
0.8%