Vercel部署Umami
前言
之前我是想参考这个教程来部署:https://digu.plus/post/8034746f42b3495fbb19926e3fb8ec4f/
然而部署过程中翻了车
这个教程新版教程(顺便总结一下我翻的车)
数据库选择
Umami支持MySQL和PostgreSQL数据库,选择自己喜欢的数据库进行数据初始化即可。下面是几个免费的数据库服务,这里选择的是ElephantSQL,当然,并不限于这些。
目前www.jsdelivr.ren免费数据库如下:
- MySQL:FREEDB.TECH、db4free、SQLPub
- PostgreSQL:ElephantSQL、Supabase
数据库部署
目前已知Supabase部署失败原因:
打开FREEDB.TECH,注册登录,创建数据库和用户
得到你的数据库和密码:
组合一下:
1 | mysql://(DATABASE USER):(PASSWORD)@(HOST):(PORT)/(DATABASE NAME) |
注意事项:这个数据库疑似国人开办,建议用国内邮箱收验证码,国外的基本收不到
(转自:https://www.freeaday.com/2023/01/db4free/ 的一条评论)
打开db4free,点击“注册免费账号”,输入信息然后点击“注册”,一会后你会收到如下邮件:
访问邮件提供的确认网址,数据库就创建成功了
然后将你设置的信息替换掉下面括号里的内容(注意:括号得去掉):
1 | mysql://(你设置的数据库用户名):(你设置的数据库密码)@db4free.net:3306/(你设置的数据库名) |
访问SQLPub,输入账号密码,点击申请,申请成功后会有如下提示
然后将里面的替换掉下面括号里的内容(注意:括号得去掉):
1 | mysql://(数据库用户):(数据库密码)@(数据库地址)/(数据库名称) |
打开Supabase,推荐使用Github登录。登陆成功后,创建一个新的项目New project->personal。
- Name:随意
- Database Password:建议点击Generate a password生成
- Region:建议选择US,因为Vercel的免费服务器在漂亮国
- Pricing Plan:Free白嫖
创建成功后,打开菜单Project Setting -> Database -> Connection string -> URI,如下图:
将红框内的内容复制下来,然后把[YOUR-PASSWORD]
替换成你生成的密码,复制备用
打开ElephantSQL,推荐使用Github登录,创建一个新的实例。Plan选择Tiny Turtle(Free)、Region随意,提交创建。
打开刚刚创建的示例,找到URL,点击眼睛图标,然后将URL复制下来备用
Vercel部署
- 点击上方按钮,跳转至 Vercel 进行 Server 端部署
如果你未登录的话,Vercel 会让你注册或登录,请使用 GitHub 账户进行快捷登录。
- 输入一个你喜欢的 Vercel 项目名称并点击 Create 继续:
- 配置环境变量
部署完成后,会跳转到环境变量部分,请按照如下方式配置环境变量:
| 名称 | 说明 |
| —————- | —————- |
|DATABASE_URL|(必填)数据库链接|
|HASH_SALT|(必填)任意字符串,推荐这里生成一串UUID|
|TRACKER_SCRIPT_NAME|(建议)任意字符串,推荐这里生成一串UUID(不填会导致去广告插件把这段脚本给拦截)|
配置完成后点击Deploy开始部署,部署过程大概两分钟,部署成功后会有一个彩纸的喜庆页面。
绑定域名
点击Go to Dashboard,进入Settings——>Domains绑定域名
你绑定的域名就是umami的后台网址
配置后台
点击你绑定的域名,进入Umami后台登录(默认用户名admin和密码umami)进入后第一时间修改密码。
添加站点 & 获取代码
“网站”—->“添加网站”添加你自己的网站
保存后点击“编辑”—->“跟踪代码”,将获取到的代码放进你的站点
不久后就能看到你的站点数据了
问题
- Umami无法登录,提示“Failed to load resource: the server responded with a status of 405”
等待几分钟后登录重试 - 使用Supabase数据库时,Vercel提示这个错误:
建议重新新建数据库,还不行的话更换别的数据库