7.1 KiB
7.1 KiB
🚦 启动前检查清单
在运行项目之前,请按照此清单逐项检查,确保所有环境和配置都已就绪。
✅ 环境检查
1. PHP 环境
php -v
- PHP 版本 >= 8.0
- 显示版本信息(如:PHP 8.0.0)
2. Python 环境
python --version
pip --version
- Python 版本 >= 3.8
- pip 已安装
3. MySQL 数据库
mysql --version
- MySQL 已安装
- MySQL 服务正在运行
- 可以连接到数据库
4. Composer(PHP 包管理器)
composer --version
- Composer 已安装
✅ 项目文件检查
1. 目录结构
lover/目录存在xunifriend_RaeeC/目录存在public/目录存在启动项目.bat文件存在
2. 配置文件
.env文件存在(根目录)lover/.env文件存在xunifriend_RaeeC/.env文件存在
3. 依赖文件
lover/requirements.txt存在xunifriend_RaeeC/composer.json存在
✅ 依赖安装检查
1. PHP 依赖
cd xunifriend_RaeeC
composer install
- 依赖安装成功
vendor/目录已生成- 无错误信息
2. Python 依赖
pip install -r lover/requirements.txt
- 所有包安装成功
- 无错误信息
验证关键包:
pip show fastapi uvicorn sqlalchemy pymysql
- fastapi 已安装
- uvicorn 已安装
- sqlalchemy 已安装
- pymysql 已安装
✅ 数据库配置检查
1. 数据库连接测试
mysql -u fastadmin -p
输入密码后:
SHOW DATABASES;
USE fastadmin;
SHOW TABLES;
- 可以成功连接
fastadmin数据库存在- 数据表已导入(应该有 30+ 张表)
2. 关键数据表检查
SHOW TABLES LIKE 'nf_%';
必需的表:
nf_user(用户表)nf_lovers(恋人表)nf_chat_message(消息表)nf_chat_session(会话表)nf_generation_tasks(任务表)
✅ 环境变量配置检查
1. 根目录 .env
打开 .env 文件,检查以下配置:
# 数据库配置(必需)
DATABASE_URL=mysql+pymysql://用户名:密码@主机:端口/数据库名?charset=utf8mb4
- 数据库地址正确
- 用户名密码正确
- 数据库名称正确
# PHP 后台地址(必需)
USER_INFO_API=http://127.0.0.1:30100/api/user_basic/get_user_basic
- 地址配置正确(本地开发使用 127.0.0.1:30100)
# 阿里云 DashScope API(必需)
DASHSCOPE_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxx
- 已填写有效的 API Key
- API Key 有余额(可在阿里云控制台查看)
# OSS 配置(必需)
ALIYUN_OSS_ACCESS_KEY_ID=your_access_key_id
ALIYUN_OSS_ACCESS_KEY_SECRET=your_access_key_secret
ALIYUN_OSS_BUCKET_NAME=your_bucket_name
ALIYUN_OSS_ENDPOINT=https://oss-cn-hangzhou.aliyuncs.com
- 已填写 OSS 配置
- Bucket 已创建
- 权限配置正确(读写权限)
2. lover/.env
DATABASE_URL=mysql+pymysql://用户名:密码@主机:端口/数据库名?charset=utf8mb4
USER_INFO_API=http://127.0.0.1:30100/api/user_basic/get_user_basic
- 与根目录 .env 保持一致
3. xunifriend_RaeeC/.env
[database]
hostname = localhost
database = fastadmin
username = fastadmin
password = your_password
- 数据库配置正确
- 与 Python 配置一致
✅ PHP 扩展检查
运行以下命令查看已启用的扩展:
php -m
必需的扩展:
- curl
- fileinfo
- gd
- json
- mbstring
- mysqli
- openssl
- pdo_mysql
- zip
如果缺少扩展,编辑 php.ini 文件,取消注释相应的 extension=xxx 行。
✅ 端口占用检查
1. 检查端口 30100(PHP)
netstat -ano | findstr :30100
- 端口未被占用(无输出)
- 或已知占用进程可以终止
2. 检查端口 30101(Python)
netstat -ano | findstr :30101
- 端口未被占用(无输出)
- 或已知占用进程可以终止
如果端口被占用,终止进程:
taskkill /F /PID 进程号
✅ 文件权限检查
确保以下目录可写(Windows 通常自动具有权限):
xunifriend_RaeeC/runtime/xunifriend_RaeeC/public/uploads/public/tts/
如果目录不存在,手动创建:
mkdir xunifriend_RaeeC\runtime
mkdir xunifriend_RaeeC\public\uploads
mkdir public\tts
✅ 启动脚本配置检查
打开 启动项目.bat,检查配置:
set PHP_PATH=D:\2_part\php-8.0.0-Win32-vs16-x64\php.exe
- PHP_PATH 指向正确的 php.exe 路径
- 文件路径存在
set PHP_PORT=30100
set PYTHON_PORT=30101
- 端口配置正确
- 端口未被占用
✅ 网络连接检查
1. 本地回环测试
ping 127.0.0.1
- 可以 ping 通
2. 外部 API 连接测试(如果使用远程数据库)
ping 1.15.149.240
- 可以 ping 通(如果使用远程数据库)
✅ 阿里云服务检查
1. DashScope API
访问控制台:https://dashscope.console.aliyun.com/
- 账号已注册
- API Key 已创建
- 账户有余额或在免费额度内
- 已开通所需模型:
- qwen-plus (对话)
- wan2.6-t2i (图像生成)
- wan2.6-i2v-flash (视频生成)
- cosyvoice-v2 (语音合成)
- paraformer-realtime-v2 (语音识别)
2. OSS 对象存储
访问控制台:https://oss.console.aliyun.com/
- Bucket 已创建
- 区域正确(如:华东1-杭州)
- 读写权限已设置(公共读或私有)
- AccessKey 已创建且有效
✅ 最终测试
1. 测试 PHP 服务
cd xunifriend_RaeeC\public
php -S 127.0.0.1:30100 router.php
打开浏览器访问:http://127.0.0.1:30100
- 页面可以访问
- 无错误信息
按 Ctrl+C 停止服务
2. 测试 Python 服务
python -m uvicorn lover.main:app --host 127.0.0.1 --port 30101
打开浏览器访问:http://127.0.0.1:30101/docs
- API 文档页面可以访问
- 显示所有 API 接口
按 Ctrl+C 停止服务
3. 测试健康检查接口
访问:http://127.0.0.1:30101/health
- 返回
{"code":1,"msg":"ok","data":{"status":"ok"}}
🎉 准备就绪!
如果以上所有项目都已勾选 ✅,恭喜你!现在可以正式启动项目了:
启动方式
方式一:使用启动脚本(推荐)
启动项目.bat
方式二:手动启动
终端 1 - PHP 服务:
cd xunifriend_RaeeC\public
php -S 0.0.0.0:30100 router.php
终端 2 - Python 服务:
python -m uvicorn lover.main:app --host 0.0.0.0 --port 30101 --reload
🆘 如果遇到问题
- 重新检查清单:确保每一项都已完成
- 查看日志:检查控制台输出的错误信息
- 参考文档:查看
运行指南.md中的常见问题部分 - 逐步排查:从环境、配置、依赖、数据库依次检查
检查完成时间: ___________
检查人: ___________
备注: ___________