Files
fj/run.md
T
selfreleaseandDevin 3c627d9dd6 feat: 佛经诵读站点初版(心经/金刚经 + 千问TTS)
- 仿故宫词条页视觉:宣纸底、朱砂印章、横竖排、分页阅读
- 千问 qwen3-tts-flash 服务端代理 + 磁盘/会话双缓存
- 整文合并为单 WAV 播放,段间静音内嵌,锁屏后台不断
- 循环开关、点击段落起读、跟读高亮自动滚动翻页
- 移动端折叠控制栏,部署于 fj.all8ai.top

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-28 13:25:43 +08:00

62 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 运行手册 · 心经诵读站点
## 技术栈
| 项 | 版本 / 说明 |
|---|---|
| 前端 | 原生 HTML + CSS + JS(无框架、无构建) |
| 后端 | Python 3 标准库 `http.server`(无第三方依赖)[Native] |
| TTS | 千问 `qwen3-tts-flash`,走 DashScope 兼容接口 `/api/v1/services/aigc/multimodal-generation/generation` |
## 首次准备
```bash
cd "/Users/freedak/Documents/AIDashboard/心经"
cp .env.example .env # 填入真实 DASHSCOPE_API_KEY
```
`.env` 变量:`DASHSCOPE_API_KEY`(必填)、`DASHSCOPE_BASE`、`TTS_MODEL`、`PORT`(默认 8000)。
## 应用启停
```bash
# 启动 [Native]
python3 server.py
# 打开 http://127.0.0.1:8000
# 停止:Ctrl+C
```
## 接口
- `POST /api/tts`,请求体 `{"text": "...", "voice": "Cherry"}`(≤600 字),返回 `audio/wav` 字节流;合成结果缓存在 `cache/` 目录。
- 静态文件由同一端口托管。
## 排错
| 现象 | 原因 | 处理 |
|---|---|---|
| 页面报"未配置 DASHSCOPE_API_KEY" | `.env` 缺失或键名不对 | 检查 `.env` |
| 502 / TTS 服务返回 4xx | 密钥失效、音色与模型不匹配 | 换音色或核对密钥 |
| 浏览器播放无声 | 系统静音 / 自动播放策略 | 点击播放按钮触发 |
## 端口表
| 服务 | 端口 |
|---|---|
| 本地 Web + API | 8000(`.env` 的 `PORT` 可改) |
| 线上应用 | 8018(127.0.0.1,仅经 nginx 反代) |
## 部署备份
**线上部署**(2026-09-28 已上线):
- 域名:`https://fj.all8ai.top`(HTTP 301 → HTTPS,Let's Encrypt 证书自动续期)
- 服务器:`154.8.162.18`(OpenCloudOS 9.4),应用目录 `/opt/fj`
- 进程:`systemctl status|restart fj`(`/etc/systemd/system/fj.service`,Restart=always)
- 反代:`/etc/nginx/conf.d/fj.conf` → `http://127.0.0.1:8018`(与 gugong/bs 等站点并存,互不冲突)
- 环境变量:服务器上 `/opt/fj/.env`(`PORT=8018`、密钥等,不入 Git)
- 更新发布:本地改完后 `rsync -avz --exclude='.git' --exclude='cache' index.html style.css app.js server.py .env root@154.8.162.18:/opt/fj/`,如有 Python 改动再 `systemctl restart fj`;纯前端改动刷新即可
备份:`cache/` 可删(自动重建);`/opt/fj` 目录 + `fj.service` + `fj.conf` 为全部恢复所需。