托管
DigitalOcean 是一个经济实惠的云托管提供商,可以让你托管自己的 Umami 设置。在本安装指南中,我们将安装 Ubuntu、PostgreSQL 或 MySQL 数据库、Nginx Web 服务器、Node.js 和 Umami。DigitalOcean 还提供一个 NodeJS droplet 构建,其中包括 Node.js、Ubuntu 和 Nginx,可以更快地帮助你入门。
对于个人使用,你可以从每月 $5 的云服务器开始,根据需要扩展。你可以使用这个 链接 获得首 60 天的 $100 代金券。
请注意,这些步骤可以在任何提供 Ubuntu 的云托管提供商上重复进行。
你可以简单地运行 npm start
来启动 Umami,但强烈建议你使用类似 PM2 的进程管理器,它将为你处理重启。
使用 PM2 启动:
npm install pm2 -g
cd umami
pm2 start npm --name umami -- start
pm2 save
Umami 正在运行后,你可以将请求从 Nginx 代理到 Umami 的域名或子域名。
以下配置将把所有来自 umami.yourdomain.com
的请求发送到你本地的 Umami 实例。
server {
server_name umami.yourdomain.com;
location / {
proxy_pass http://localhost:3000;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
以下配置将允许你在你的域名的子路径下托管 Umami(例如:website.com/stats)。这需要在你的 .env
文件中设置环境变量 BASE_PATH=/stats
。
server {
...
location /stats/_next/static/ {
alias /your_install_location/umami/.next/static/;
access_log off;
expires max;
}
location /stats {
proxy_pass http://127.0.0.1:3000;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
...
}
就这样!你现在可以在自己的服务器上自托管 Umami。