Umami 是一種開源的網站分析工具,旨在為用戶提供隱私保護的 Google Analytics 替代方案。使用 Umami,網站管理員可以追踪訪客行為並獲得有關網站性能的見解,而不會侵犯用戶的隱私。Umami 提供實時追踪、可自定義的儀表板和詳細的報告等功能。由於是自托管的,用戶可以完全控制自己的數據,並確保不與第三方公司共享。
這裡簡單介紹一下在 Vercel 部署 Umami 的方法:
0/ 準備工作#
1/ Fork Umami#
登錄 Github,訪問以下 Umami 倉庫,並 Fork 至您的 Github 帳號
進入您 Fork 後的 Umami 倉庫,點擊 Add file
- Create new file
名稱填 vercel.json
,內容填:
{
"rewrites": [
{
"source": "/index.js",
"destination": "/umami.js"
}
]
}
2/ 創建數據庫#
登錄 Supabase,點擊 New project
創建項目,輸入項目名稱、數據庫密碼(十分重要,記錄備用),推薦區域選擇 East US
,點擊創建稍等片刻即可。
進入項目,點擊設置 - Database
- Connection string
- URI
,複製數據庫連接信息,保存備用(將創建項目時設置的密碼替換其中的 [YOUR-PASSWORD]
)
3/ 在 Vercel 上搭建 Umami#
使用 Github 登錄 Vercel,點擊 Add New...
- Project
選擇您 Fork 後的 Umami 倉庫,點擊 Import
展開 Environment Variables
,輸入以下內容:
- name
HASH_SALT
- value隨機字符串
- name
DATABASE_URL
- value上一步記錄的數據庫連接信息
特別提醒:需要在數據連接信息後面加上 ?pgbouncer=true
,例如:
postgresql://postgres:密碼@db.隨機字符.supabase.co:5432/postgres?pgbouncer=true
點擊 Deploy
稍等一會即可看見部署成功,由於 Vercel 默認域名 vercel.app
已經被強,推薦進入設置 - Domains
綁定您自己的域名。
先將您的子域名 CNAME
至 cname-china.vercel-dns.com
再點擊 Add
。
訪問您的域名,使用用戶名 admin
、密碼 umami
進行登錄,登陸後記得修改密碼。
4/ 引用至您的網站#
在 Umami 後台,進入設置頁面,新建網站,複製引用代碼,將代碼粘貼至您網站 </body>
前即可。
特別的,由於 Umami 默認的鏈接會被 Adblock 插件屏蔽,導致無法收集網站信息,根據我們第一步的設置,可以將代碼中的 umami.js
替換為 index.js
,這樣就不會被 Adblock 屏蔽了,例如:
原代碼:
<script async defer data-website-id="xxxxxx" src="https://tongji.domain.com/umami.js"></script>
修改後:
<script async defer data-website-id="xxxxxx" src="https://tongji.domain.com/index.js"></script>