Skip to content

站点统计

umami

umami 是一个可以部署在自己服务器上的站点统计库,也可以选择使用官方的服务器或vercel一键部署,可以去官网查看相关信息

配置

umami部署成功后,需要配置以下内容才可以让他在博客中生效

相应参数

ts
// config.mts
export default defineConfigWithTheme<ThemeConfig>({
  // ...
  themeConfig: {
    // ...
    umami: { 
      umamiId: "xxx", 
      umamiToken: "xxxx", 
      umamiUrl: "xxx", 
    }, 
  }
})

umamiId

网站id,需要在统计后台中,点击设置查看网站ID

umamiToken

这个获取相对麻烦一些,需要在F12中获取登录后台时的token,目前来看token是不会过期的,这里确实会带来一定的信息隐患,所以建议这里创建一个访客token去使用。

说一下为什么这么做,umami提供的后端接口中,并没有考虑登录接口非同源请求的情况,所以在博客站点通过无法通过登录接口获取token,所以如果在不写后端接口的前提下,只能直接去使用token了,如果你对此有疑义,或者有解决方案,也欢迎提出。

umamiUrl

umami站点地址,即后端地址

动态添加js

除了上述的参数外还需要在配置一项,用于开启埋点

ts
export default defineConfigWithTheme<ThemeConfig>({
  head: [
          [
            "script",
            {
              defer: "",
              src: `https://${umamiUrl}/script.js`,
              "data-website-id": umamiId,
            },
          ],
        ],
})

这样便完成了站点统计的设置,如果你不想在本地测试时触发埋点,可以按以下写法设置

ts
const isEnv = process.env.NODE_ENV !== "production"; 
export default defineConfigWithTheme<ThemeConfig>({
  head: isEnv 
    ? [] 
    : [
        [
          "script",
          {
            defer: "",
            src: "https://analysis.nighttea.space/script.js",
            "data-website-id": "f5a8ac77-caa7-4c9e-b100-c6e030ea77a7",
          },
        ],
      ],
})
夜茶 2020 ~ 2026