自建网站统计工具-免费开源的网站访问流量统计分析平台Umami
前言Umami统计功能不多，但足以用于日常小站统计使用。1 官网官网：https://umami.is演示：https://eu.umami.is/share/LGazGOecbDtaIwDr/umami.is项目：https://github.com/mikecao/umami部署完成后的地址：https://s.vvars.com2 要求具有 Node.js 版本 18.18 或更高版本的服务器数据库。Umami支持MariaDB（最低版本v10.5）、MySQL（最低版本v8.0）和PostgreSQL（最低版本v12.14）数据库。二安装教程本文介绍如何在VPS上安装Umami，关于在Docker上安装Umami，可以参考本站文章：免费开源的网站访问流量统计分析平台Umami的Docker安装方式实战。1 安装 Yarnnpm install -g yarn2 获取源代码并安装软件包git clone https://github.com/umami-software/umami.git cd umami yarn install3 配置Umami1）在umami目录下创建.env文件，包含以下内容：DATABASE_URL=连接URL2）连接URL格式：postgresql://用户名:mypassword@localhost:5432/mydb mysql://用户名:mypassword@localhost:3306/mydb4. 构建应用程序yarn build如果您是首次安装，构建步骤将在您的数据库中创建表。它会创建一个名为 admin、password 的 umami 登录用户。5 启动应用程序yarn start默认情况下，这将在启动应用程序上http://localhost:3000。您需要代理来自Web服务器的请求或更改端口才能直接为应用程序提供服务。6 Umami域名配置Umami上面的安装已经完成了，但是只能使用IP+端口访问，我们这里就要利用到Nginx反向绑定域名的方法来实现Umami域名访问了。代码如下： location / { 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; }如果你用的是LNMP或者Oneinstack一键安装包，找到Nginx配置文件，然后添加以上反向绑定域名的代码即可。配置方法和Bitwarden自建密码存储系统图文教程绑定域名反代类似，主要调整你的反代部分，示例如下：server { listen 443 ssl http2; #listen [::]:443 ssl http2; server_name s.vvars.com ; index index.html index.htm index.php default.html default.htm default.php; root /home/wwwroot/wzfou.com; location / { 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; } ssl_certificate /usr/local/nginx/conf/ssl/tmth.wzfou.me/fullchain.cer; ssl_certificate_key /usr/local/nginx/conf/ssl/tmth.wzfou.me/tmth.wzfou.me.key; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; ssl_prefer_server_ciphers on; ssl_ciphers "TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256:EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5"; ssl_session_cache builtin:1000 shared:SSL:10m; # openssl dhparam -out /usr/local/nginx/conf/ssl/dhparam.pem 2048 ssl_dhparam /usr/local/nginx/conf/ssl/dhparam.pem; access_log /home/wwwlogs/tmth.wzfou.me.log; }