From 9cd518227dbcb661f172bac22767d16de60ae70a Mon Sep 17 00:00:00 2001 From: Dai0814 <3490199389@qq.com> Date: Wed, 4 Nov 2026 12:33:08 +0800 Subject: [PATCH] =?UTF-8?q?fix(website):=20favicon=20=E8=B7=AF=E5=BE=84?= =?UTF-8?q?=E4=B8=8E=E6=96=87=E6=A1=A3=E7=AB=99=E9=93=BE=E6=8E=A5=E4=B8=A4?= =?UTF-8?q?=E5=A4=84=20404?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 实测发现两个问题,均导致线上 404: 1. favicon 不生效 favicon.svg 放在 website/public/,但 srcDir 是 ./pages, VitePress 的 public 目录相对 srcDir 解析,即应为 pages/public/。 原位置不被打包,每个页面的 /www/favicon.svg 全部 404。 → 移到 website/pages/public/favicon.svg 2. 「文档中心」导航链接 404 DOCS_URL 默认 '/docs/',VitePress 会给站内链接自动加 base 前缀, 实际渲染成 '/www/docs/',而网关没有这个路径(文档站在 /docs/)。 → 默认值改为完整 URL,VitePress 判定为外链不做前缀拼接 验证(SITE_BASE=/www/ 与 / 两形态) - 页面引用完整性:146 → 139 条,失效 15 → 0 - HTTP 实测(模拟 nginx alias + try_files):8 页 200、 CSS/JS/favicon 200、/www 301、不存在页 404 --- website/.vitepress/config.mts | 13 ++++++++----- website/{ => pages}/public/favicon.svg | 0 2 files changed, 8 insertions(+), 5 deletions(-) rename website/{ => pages}/public/favicon.svg (100%) diff --git a/website/.vitepress/config.mts b/website/.vitepress/config.mts index 2f7c12a..1386302 100644 --- a/website/.vitepress/config.mts +++ b/website/.vitepress/config.mts @@ -17,12 +17,15 @@ const SITE_BASE = process.env.SITE_BASE ?? '/www/' const REPO_URL = process.env.REPO_URL ?? 'https://git.5iot.com/iotlcm-public/iotlcm' /** - * 文档站地址。文档站与官网是两个容器: - * - 过渡形态:文档站挂在网关的 /docs/ 下 - * - 独立域名形态:文档站通常独占 docs.<域名> 或同域 /docs/ - * 独立部署时用 DOCS_URL 覆盖。 + * 文档站地址。文档站与官网是两个容器,由网关按路径分流: + * - 官网在 /www/ 下,文档站在 /docs/ 下,两者同级 + * + * 注意:VitePress 会给所有站内链接自动加上 base 前缀,'/docs/' 会被拼成 + * '/www/docs/'——而网关并没有这个路径,点击「文档中心」会 404。 + * 因此默认值必须是完整 URL(VitePress 判定为外链,不做前缀拼接)。 + * 独立部署时用 DOCS_URL 覆盖成实际地址。 */ -const DOCS_URL = process.env.DOCS_URL ?? '/docs/' +const DOCS_URL = process.env.DOCS_URL ?? 'http://open.5iot.com:5051/docs/' export default defineConfig({ srcDir: './pages', diff --git a/website/public/favicon.svg b/website/pages/public/favicon.svg similarity index 100% rename from website/public/favicon.svg rename to website/pages/public/favicon.svg