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