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>
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
# 运行手册 · 心经诵读站点
|
||||
|
||||
## 技术栈
|
||||
|
||||
| 项 | 版本 / 说明 |
|
||||
|---|---|
|
||||
| 前端 | 原生 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` 为全部恢复所需。
|
||||
Reference in New Issue
Block a user