跳转到主要内容

crayonxiaoxin

[VitePress] 部署到 Vercel 后直接访问 url 出现 404 或者卡住的问题

[VitePress] 部署到 Vercel 后直接访问 url 出现 404 或者卡住的问题

使用 VitePress 将文档部署到 Vercel 后,首次直接访问一切正常,但一旦选择子路径或刷新页面,便会立即跳转到 404 页面或直接卡死,控制台中还会出现无限循环报错。

原因是在 VitePress 中配置了 cleanUrls 选项,用于去除 URL 中的 .html 后缀:

export default defineConfig({
  // ...
  cleanUrls: true, // 去掉 .html 后缀
  // ...
});

然而 Vercel 默认并不处理这种情况,因此导致了上述问题。

解决方法是在项目根目录创建一个 vercel.json 文件:

{
  "cleanUrls": true,
  "rewrites": [{ "source": "/(.*)", "destination": "/index.html" }]
}

讨论

还没有留言,来留下第一条评论吧!

留下足迹