设置
存在数据库 informations 表里,由后台管理维护的设置项
本节详细介绍后台设置页面中各设置项的作用。
基本信息
四项都展示在前台,长度按字符数计:
| 字段 | 上限 | 说明 |
|---|---|---|
| 站点名称 | 100 字符 | 导航栏与页脚显示的站名,同时拼接至各页面的标题 |
| 站点地址 | 191 字符 | 站点的完整地址,带协议头且末尾不带 /;登录用户发表评论时用于预填「网站」一栏 |
| 站点描述 | 191 字符 | 站点一句话简介,RSS 订阅源的描述取自该字段 |
| 备案号 | 100 字符 | 首页页脚显示并链接到工信部备案查询,留空则不显示 |
说明:
- 数据库里没有值时,前三项分别回落到
site.config.ts的site.name、site.url、seo.description。备案号没有对应项,为空。 - 站点名称用在导航栏的站名、页脚的版权行,以及各页面的标题(页面名 - 站点名,首页标题就是站名本身);RSS 的频道标题也取它。
- 站点地址用在页面的 canonical 与 og:url、站点地图、文章页的分享链接与二维码、RSS 的频道链接与自引用地址,以及登录用户发表评论时预填的「网站」一栏。
- 站点描述目前只用在 RSS 的频道描述上,留空时改用「站点名称 - 最新文章」。
- 更换域名时,需要同时修改
site.config.ts并重新构建:防镜像跳转目标、/api/*的 referer 白名单、CSP 与静态资源 CDN 前缀均取自构建期配置,仅修改后台设置会导致部分配置生效、部分配置仍保持原值。
评论设置
控制评论是否开放、如何显示,以及提交时要满足哪些条件:
| 字段 | 默认 | 说明 |
|---|---|---|
| 开启评论 | 开 | 关闭后文章页与留言页的评论区整块不渲染;小程序评论另由 site.config.ts 的 features.miniComment 控制 |
| 评论审核 | 关 | 开启后新评论入库即为待审核,前台不显示,要在后台放行 |
| 头像服务 | Gravatar | 可选 Gravatar、Cravatar、WeAvatar;服务端按邮箱的 md5 拼镜像地址,没填邮箱的评论不显示头像 |
| 每页显示评论数 | 10 | 评论区每页条数,输入框限制 1–100 |
| 最大回复层级 | 4 | 填 0 表示不允许回复,输入框限制 0–10 |
| 发布间隔(秒) | 60 | 同一 IP 两次评论的最小间隔,填 0 表示不限制 |
| 必填邮箱 | 开 | 关闭后不填邮箱也能提交 |
| 必填链接 | 关 | 开启后必须填个人链接 |
| 评论审核 API | 不使用 | 可选「不使用」或「百度内容审核平台」 |
说明:
- 选「百度内容审核平台」后会展开 API Key、Secret Key 与「验证管理员评论」三项,评论在入库前先送审,此时「评论审核」不再参与判定。送审异常时按待审核处理,不会直接放行。百度内容审核平台的 API Key 与 Secret Key 请从 百度内容审核平台 获取。
- 发布间隔由服务端按同一 IP 校验,不只是输入框旁的倒计时。
- 头像服务决定评论头像使用哪个镜像站,更换服务不会影响已入库的评论,因为头像地址会根据邮箱实时计算。
外观设置
首页文字、页脚播放器的歌单与图片分类的位置,三项都是文本、都有长度上限:
| 字段 | 默认 | 说明 |
|---|---|---|
| 首页自定义文字 | site.config.ts 的 pages.homeCustomText | 首页 Hero 标题下方的文字,支持 HTML(读取时按白名单过滤,库里存的是原文),上限 191 字符 |
| 音乐列表 ID | 空 | 页脚播放器的歌单,格式「歌单 ID || 来源」,上限 191 字符 |
| 图片分类 Slug | 空 | 指定按图片作品展示的分类,填写该分类的 slug,上限 100 字符 |
说明:
- 音乐来源可选
netease、tencent、xiami、kugou、baidu、kuwo。 - 图片分类 Slug 填写分类在 URL 中的 slug(小写字母、数字、连字符)。首页图片瀑布流使用该分类,「查看全部图片」也链接至该分类;该分类页会使用宽版瀑布流。
附件上传
上传策略与腾讯云 COS 字段,前者二选一、后者七项,均为文本:
| 字段 | 默认 | 说明 |
|---|---|---|
| 上传策略 | 本地存储 | 可选「本地存储」或「腾讯云 COS」;切换至 COS 后,下方七项才会出现并参与上传 |
| SecretId | 空 | 腾讯云访问管理 API 密钥管理 中的 SecretId,上限 191 字符 |
| SecretKey | 空 | 同上的 SecretKey,上限 191 字符 |
| 存储桶名称 | 空 | 完整名称,格式 bucketname-AppID,不带地域后缀,上限 191 字符 |
| 地域 | 空 | 存储桶所在地域,如 ap-guangzhou、ap-beijing、ap-shanghai,上限 100 字符 |
| 源站域名 | 空 | COS 源站域名(https://...),用于上传文件;留空则使用 COS 默认地址,上限 191 字符 |
| CDN 加速域名 | 空 | CDN 加速域名(https://...),用于外部访问;留空则使用源站,上限 191 字符 |
| 上传后的图片后缀 | 空 | 仅对图片生效;留空保持原格式,填写后所有上传图片会按此后缀输出,应用层无长度校验,超 191 字符会被数据库上限拒绝 |
说明:
- 本地存储会落到
public/uploads/{年}/{月}/,该路径已被.gitignore忽略;生产环境请随部署持久化或挂到持久卷,详细介绍请参照 附件 章节。 - SecretId 与 SecretKey 都在腾讯云控制台 API 密钥管理 中获取,切勿在源码或前端任何位置硬编码。
- 存储桶名称可在腾讯云 COS 控制台的存储桶列表里查看。
- 上传后的图片后缀填
webp、avif、jpg等,目标后缀的 MIME 由服务端按映射表重写;视频文件不受此项影响。
高级设置
用户会话、邮件通知与搜索缓存三类配置,共 16 项:
| 字段 | 默认 | 说明 |
|---|---|---|
| Session 存储方式 | 内存存储 | 可选「内存存储」「文件存储」「数据库存储」;切换后所有用户需重新登录 |
| 邮件推送方式 | 不推送 | 可选「不推送」或「使用 SMTP」;选 SMTP 后下方十二项才出现并参与发送 |
| SMTP 服务器地址 | 空 | SMTP 服务器域名,如 smtp.gmail.com,上限 191 字符 |
| SMTP 端口 | 465 | 输入框限制 1-65535;SSL 一般 465、TLS 一般 587 |
| SMTP 登录用户 | 空 | 登录邮箱地址,上限 191 字符 |
| SMTP 登录密码 | 空 | 邮箱登录密码或 SMTP 授权码 |
| SMTP 加密模式 | TLS | 可选「不加密」「SSL」「TLS」 |
| SMTP 邮箱地址 | 空 | 发件邮箱地址,上限 191 字符 |
| 发件人昵称 | 空 | 邮件接收人看到的发件人名称,上限 100 字符 |
| 站长收件邮箱 | 空 | 接收通知的邮箱地址,上限 191 字符 |
| 通知站长(总开关) | 关 | 关闭后不发送任何给站长的通知邮件;下方三个通知子开关随之停用 |
| 错误日志通知 | 开 | 服务端异常、5xx 与客户端错误上报时发送邮件 |
| 评论通知 | 开 | 新评论、待审核与垃圾评论发送邮件通知 |
| 友链通知 | 开 | 友链申请与修改请求发送邮件通知 |
| 启用搜索缓存 | 关 | 是否把热门搜索结果缓存到 Redis |
| 缓存过期时间(秒) | 300 | 输入框限制 60-3600;建议 300 秒(5 分钟) |
说明:
- Session 存储三种行为:内存(重启丢失)、文件(落
.sessions/,重启保留)、数据库(支持多实例);切换后所有用户需重新登录。 - 搜索缓存依赖 Redis,需在
site.config.ts内配置build.redis.enabled=true才能生效。 - 邮件发送日志始终写入文件,不再有开关;日志格式、落点与归档方式见 日志系统。
- 通知站长总开关默认关闭,错误日志、评论、友链三个子开关默认开启;总开关不开启时任何通知都不会发送。
本页还提供了数据备份与恢复:导出全站数据为 JSON 备份,导入会清空并覆盖现有数据且不可撤销,请先做好备份;备份包含文章、评论、分类标签、友链、旅行地点、订阅、站点设置等业务数据,不含用户账号与登录会话。
说明:
- 备份里的所有密钥字段(smtpPassword、cosSecretId、cosSecretKey、baiduApiKey、baiduSecretKey)一律以明文落进 JSON,不做掩码,请妥善保存备份文件。
- 导入备份会原样恢复这些密钥字段;唯一的例外是
sessionStoreType(Session 存储方式),它与部署环境绑定,会保留本机原值不被覆盖。 - 保存设置时,所有密钥字段都按表单提交值写入;如需保留某个密钥的现有值,请不要清空对应输入框,否则保存后会被覆盖为空字符串。
其他设置
文章分页、订阅缓存与友情链接申请,三项配置:
| 字段 | 默认 | 说明 |
|---|---|---|
| 每页显示文章数 | 12 | 文章列表每页显示的文章数量,输入框限制 1-100 |
| 订阅信息更新间隔(小时) | 8 | RSS 订阅信息缓存更新时间,输入框限制 1-168 |
| 自动同意友情链接申请 | 关 | 开启后,前台友情链接申请会自动通过,无需人工审核 |
说明:订阅信息更新间隔生效后会在后台定时刷新 RSS 订阅源;间隔越短越及时,但会加重源站请求压力。