feat(api): 初始化笔记应用后端基础架构

- 添加环境配置文件 .env.example 包含数据库、JWT、CORS等配置
- 创建 .gitignore 文件忽略敏感文件和临时文件
- 配置 Apache 重写规则支持路由转发
- 实现 JWT 认证中间件提供用户身份验证功能
- 添加 MySQL 数据库初始化脚本包含分组、图片、笔记表结构
This commit is contained in:
ikmkj
2026-01-26 08:49:10 +08:00
parent 0426ad22b7
commit 90f63d9df1
31 changed files with 1898 additions and 0 deletions

130
biji-php/README.md Normal file
View File

@@ -0,0 +1,130 @@
# 笔记管理系统 - PHP 后端
基于 PHP 7.4 的笔记管理系统后端,使用 Slim Framework 4 构建 RESTful API。
## 环境要求
- PHP 7.4(线程安全版)
- MySQL 5.7+
- Apache/Nginx
- Composer
## 安装步骤
### 1. 安装依赖
```bash
cd biji-php
composer install
```
### 2. 配置环境变量
复制 `.env.example``.env` 并修改配置:
```bash
cp .env.example .env
```
编辑 `.env` 文件,配置数据库连接信息:
```
DB_HOST=localhost
DB_PORT=3306
DB_NAME=biji_db
DB_USER=root
DB_PASS=your_password
JWT_SECRET=your-secret-key-change-this
JWT_EXPIRE=86400
CORS_ORIGIN=http://localhost:5173
```
### 3. 导入数据库
使用 `sql/mysql/all.sql` 文件创建数据库表结构。
```bash
mysql -u root -p biji_db < ../sql/mysql/all.sql
```
### 4. 配置 Web 服务器
#### Apache 配置
确保启用了 `mod_rewrite` 模块,并将网站根目录指向 `public` 目录。
#### Nginx 配置示例
```nginx
server {
listen 80;
server_name your-domain.com;
root /path/to/biji-php/public;
index index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
```
## API 接口文档
### 用户接口 (`/api/user`)
- `POST /register` - 用户注册
- `POST /login` - 用户登录
- `POST /validate-token` - 验证 Token需认证
- `PUT /password` - 更新密码(需认证)
- `DELETE /deleteUser` - 删除用户(需认证)
### Markdown 接口 (`/api/markdown`)
- `GET /{id}` - 获取笔记内容
- `GET /` - 获取所有笔记
- `POST /updateMarkdown` - 更新笔记(需认证)
- `DELETE /{id}` - 删除笔记(需认证)
### 分组接口 (`/api/groupings`)
- `GET /` - 获取所有分组(需认证)
- `POST /` - 创建分组(需认证)
## 项目结构
```
biji-php/
├── public/ # Web 根目录
│ ├── index.php # 入口文件
│ └── .htaccess # Apache 重写规则
├── src/ # 源代码
│ ├── Controllers/ # 控制器
│ ├── Models/ # 模型
│ ├── Middleware/ # 中间件
│ └── Utils/ # 工具类
├── config/ # 配置文件
├── uploads/ # 文件上传目录
├── vendor/ # Composer 依赖
└── composer.json # Composer 配置
```
## 开发说明
本项目遵循以下原则:
- PSR-4 自动加载
- RESTful API 设计
- JWT Token 认证
- MVC 架构模式
## 许可证
MIT License