From 1e827ab906230e22cfb50b5802cfa1ab4c0f3d20 Mon Sep 17 00:00:00 2001 From: rjb <263303411@qq.com> Date: Sun, 14 Sep 2025 13:05:14 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- MOBILE_DEPLOYMENT_REPORT.md | 1 + MOBILE_OPTIMIZATION_PLAN.md | 1 + __pycache__/gunicorn.conf.cpython-313.pyc | Bin 0 -> 2892 bytes __pycache__/run_dev.cpython-313.pyc | Bin 0 -> 356 bytes logs/app.log | 6 + logs/gunicorn.pid | 2 +- logs/gunicorn_access.log | 27 +++ logs/gunicorn_error.log | 181 ++++++++++++++++++ .../__pycache__/__init__.cpython-313.pyc | Bin 0 -> 2567 bytes .../__pycache__/meal_planning.cpython-312.pyc | Bin 14974 -> 14950 bytes .../routes/meal_planning.py | 2 +- src/flask_prompt_master/static/manifest.json | 1 + src/flask_prompt_master/static/sw.js | 1 + .../templates/meal_planning_mobile.html | 1 + test_mobile_page.html | 1 + .../pages/meal-planning/meal-planning.js | 1 + .../pages/meal-planning/meal-planning.wxml | 1 + .../pages/meal-planning/meal-planning.wxss | 1 + 启动和停止.txt | 160 ++++++++++++++++ 19 files changed, 385 insertions(+), 2 deletions(-) create mode 100644 __pycache__/gunicorn.conf.cpython-313.pyc create mode 100644 __pycache__/run_dev.cpython-313.pyc create mode 100644 src/flask_prompt_master/__pycache__/__init__.cpython-313.pyc create mode 100644 启动和停止.txt diff --git a/MOBILE_DEPLOYMENT_REPORT.md b/MOBILE_DEPLOYMENT_REPORT.md index 6aaa830..3236585 100644 --- a/MOBILE_DEPLOYMENT_REPORT.md +++ b/MOBILE_DEPLOYMENT_REPORT.md @@ -216,3 +216,4 @@ curl -s http://localhost:5002/meal-planning/mobile | head -20 **技术支持**:如有任何问题,请检查服务日志或联系技术支持团队。 + diff --git a/MOBILE_OPTIMIZATION_PLAN.md b/MOBILE_OPTIMIZATION_PLAN.md index 7c3d7d1..09874c2 100644 --- a/MOBILE_OPTIMIZATION_PLAN.md +++ b/MOBILE_OPTIMIZATION_PLAN.md @@ -204,3 +204,4 @@ input, select, textarea, button { **立即行动**:部署移动端优化页面,让用户享受更好的移动端体验! 🚀 + diff --git a/__pycache__/gunicorn.conf.cpython-313.pyc b/__pycache__/gunicorn.conf.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..45984f59035795c1dd0b557ce0eab9be0e3f650c GIT binary patch literal 2892 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 Wb9BUZpQ$<*8lj)V_o&LE=l=k57F=ln literal 0 HcmV?d00001 diff --git a/src/flask_prompt_master/routes/__pycache__/meal_planning.cpython-312.pyc b/src/flask_prompt_master/routes/__pycache__/meal_planning.cpython-312.pyc index 4bbf4da3597a4f5abeef6a43a53a18e5fae73564..faf31b8d71fe2be9b6e39cf76f55711db0183941 100644 GIT binary patch delta 34 pcmexY@~njSG%qg~0}ynrIGC|+Bd;bq(+kGQ7VHN%3v%Qd0RY;h3#kAA delta 56 zcmaD>@~?#VG%qg~0}#wDKA3TABd;bq69dy^3-*JePdj^`PUw5Gqx0#Kl}~o`zHIM( MwqX0_Z|ns|0F8kfYybcN diff --git a/src/flask_prompt_master/routes/meal_planning.py b/src/flask_prompt_master/routes/meal_planning.py index 8ce3dd5..f8ad9ad 100644 --- a/src/flask_prompt_master/routes/meal_planning.py +++ b/src/flask_prompt_master/routes/meal_planning.py @@ -43,7 +43,7 @@ def generate_meal_plan(region_type, diner_count, meal_type, hometown, preference # 构建系统提示词(参考新代码结构) system_prompt = f"""你是一位专业的{region_type}智能饭菜清单规划师和营养搭配专家。 -背景信息:需要制定科学的饭菜清单方案,包括根据家乡风俗习惯推荐、个人喜好匹配、就餐人数适配、前后三天不重样、详细做法说明等全方位用餐指导。 +背景信息:需要制定科学的饭菜清单方案,包括根据家乡风俗习惯推荐、个人喜好匹配、就餐人数适配、详细做法说明等全方位用餐指导。 约束条件: - 确保营养均衡 diff --git a/src/flask_prompt_master/static/manifest.json b/src/flask_prompt_master/static/manifest.json index 3154f19..b755e94 100644 --- a/src/flask_prompt_master/static/manifest.json +++ b/src/flask_prompt_master/static/manifest.json @@ -55,3 +55,4 @@ } + diff --git a/src/flask_prompt_master/static/sw.js b/src/flask_prompt_master/static/sw.js index aafda21..f0b2676 100644 --- a/src/flask_prompt_master/static/sw.js +++ b/src/flask_prompt_master/static/sw.js @@ -125,3 +125,4 @@ self.addEventListener('notificationclick', function(event) { }); + diff --git a/src/flask_prompt_master/templates/meal_planning_mobile.html b/src/flask_prompt_master/templates/meal_planning_mobile.html index b4e3f17..7fb8489 100644 --- a/src/flask_prompt_master/templates/meal_planning_mobile.html +++ b/src/flask_prompt_master/templates/meal_planning_mobile.html @@ -498,3 +498,4 @@ document.addEventListener('DOMContentLoaded', function() { {% endblock %} + diff --git a/test_mobile_page.html b/test_mobile_page.html index 26015cc..8275520 100644 --- a/test_mobile_page.html +++ b/test_mobile_page.html @@ -157,3 +157,4 @@ + diff --git a/wechat-miniprogram/pages/meal-planning/meal-planning.js b/wechat-miniprogram/pages/meal-planning/meal-planning.js index 691bfcd..77ccbb0 100644 --- a/wechat-miniprogram/pages/meal-planning/meal-planning.js +++ b/wechat-miniprogram/pages/meal-planning/meal-planning.js @@ -260,3 +260,4 @@ Page({ }); + diff --git a/wechat-miniprogram/pages/meal-planning/meal-planning.wxml b/wechat-miniprogram/pages/meal-planning/meal-planning.wxml index b7bf926..56f9730 100644 --- a/wechat-miniprogram/pages/meal-planning/meal-planning.wxml +++ b/wechat-miniprogram/pages/meal-planning/meal-planning.wxml @@ -104,3 +104,4 @@ + diff --git a/wechat-miniprogram/pages/meal-planning/meal-planning.wxss b/wechat-miniprogram/pages/meal-planning/meal-planning.wxss index bd60b10..699e608 100644 --- a/wechat-miniprogram/pages/meal-planning/meal-planning.wxss +++ b/wechat-miniprogram/pages/meal-planning/meal-planning.wxss @@ -341,3 +341,4 @@ } + diff --git a/启动和停止.txt b/启动和停止.txt new file mode 100644 index 0000000..40e96c3 --- /dev/null +++ b/启动和停止.txt @@ -0,0 +1,160 @@ +# 提示词大师项目 - 服务器启动和停止指南 + +## 🚀 **启动服务器** + +### 方法一:使用完整命令启动 +```bash +# 进入项目目录 +cd /home/renjianbo/aitsc + +# 激活conda环境并启动服务 +eval "$(/home/renjianbo/miniconda3/bin/conda shell.bash hook)" && conda activate myenv && gunicorn -c gunicorn.conf.py run_dev:app +``` + +### 方法二:分步启动 +```bash +# 1. 进入项目目录 +cd /home/renjianbo/aitsc + +# 2. 激活conda环境 +eval "$(/home/renjianbo/miniconda3/bin/conda shell.bash hook)" +conda activate myenv + +# 3. 启动Gunicorn服务 +gunicorn -c gunicorn.conf.py run_dev:app +``` + +### 方法三:后台启动 +```bash +# 后台启动服务 +nohup gunicorn -c gunicorn.conf.py run_dev:app > logs/gunicorn.log 2>&1 & +``` + +## 🛑 **停止服务器** + +### 方法一:使用PID文件停止 +```bash +# 停止服务(如果存在PID文件) +kill -TERM $(cat logs/gunicorn.pid) +``` + +### 方法二:强制停止所有Gunicorn进程 +```bash +# 强制停止所有gunicorn进程 +pkill -9 -f gunicorn +``` + +### 方法三:停止特定项目进程 +```bash +# 停止run_dev:app相关进程 +pkill -f "run_dev:app" +``` + +## 🔍 **检查服务状态** + +### 检查进程状态 +```bash +# 查看Gunicorn进程 +ps aux | grep "run_dev:app" | grep -v grep + +# 查看所有Gunicorn进程 +ps aux | grep gunicorn | grep -v grep +``` + +### 检查端口状态 +```bash +# 检查5002端口是否被监听 +ss -tlnp | grep :5002 + +# 或者使用netstat +netstat -tlnp | grep :5002 +``` + +### 检查服务响应 +```bash +# 测试服务是否正常响应 +curl -s http://localhost:5002/ | head -10 + +# 测试特定页面 +curl -s -o /dev/null -w "%{http_code}" http://localhost:5002/admin/analytics_admin/ +``` + +## 📊 **查看日志** + +### 查看错误日志 +```bash +# 查看最新的错误日志 +tail -f logs/gunicorn_error.log + +# 查看应用日志 +tail -f logs/app.log +``` + +### 查看访问日志 +```bash +# 查看访问日志 +tail -f logs/gunicorn_access.log +``` + +## 🔧 **故障排除** + +### 清理和重启 +```bash +# 1. 停止所有相关进程 +pkill -f gunicorn + +# 2. 删除PID文件 +rm -f logs/gunicorn.pid + +# 3. 重新启动 +eval "$(/home/renjianbo/miniconda3/bin/conda shell.bash hook)" && conda activate myenv && gunicorn -c gunicorn.conf.py run_dev:app +``` + +### 检查依赖 +```bash +# 检查Python环境 +which python +python --version + +# 检查已安装的包 +pip list | grep -E "(flask|gunicorn|openai)" +``` + +## 🌐 **访问地址** + +启动成功后,可以访问以下地址: + +- **主页**:`http://101.43.95.130:5002/` +- **饭菜规划**:`http://101.43.95.130:5002/meal-planning` +- **后台管理**:`http://101.43.95.130:5002/admin` +- **数据分析**:`http://101.43.95.130:5002/admin/analytics_admin/` + +## ✅ **启动成功的标志** + +看到以下信息表示启动成功: +- `[INFO] 应用启动` +- `[INFO] 工作进程 X 已启动` +- `[INFO] 工作进程 X 初始化完成` +- 端口5002开始监听 + +## 📝 **项目信息** + +- **项目名称**:提示词大师 +- **功能描述**:智能生成高质量提示词,提升您的工作效率 +- **技术栈**:Python 3.12 + Flask + Gunicorn + MySQL +- **端口**:5002 +- **环境**:conda myenv +- **配置文件**:gunicorn.conf.py +- **启动文件**:run_dev.py + +## 🚨 **注意事项** + +1. 确保conda环境已正确激活 +2. 确保所有依赖包已安装 +3. 确保数据库连接正常 +4. 确保5002端口未被占用 +5. 定期检查日志文件大小,避免磁盘空间不足 + +--- +*最后更新:2025-09-14* +*维护人员:系统管理员*