网站统计——利用开源的网站流量分析统计工具
前言
github
: umami仓库
umami
: umami官网
demo
: umami演示
机器配置
: 轻量服务器(2C1G SSD 40GB)
内容
docker方式安装
通过docker方式安装 | 如果是需要调用一些api接口建议使用原生态;
docker安装
# curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun # systemctl start docker # systemctl enable docker
docker-compose安装
# curl -L "https://github.com/docker/compose/releases/download/v2.7.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose # chmod +x /usr/local/bin/docker-compose # docker-compose --version
docker-compose.yml
--- version: '3' services: umami: image: ghcr.io/mikecao/umami:postgresql-latest ports: - "3000:3000" environment: DATABASE_URL: postgresql://umami:umami@db:5432/umami DATABASE_TYPE: postgresql HASH_SALT: replace-me-with-a-random-string depends_on: - db restart: always db: image: postgres:12-alpine environment: POSTGRES_DB: umami POSTGRES_USER: umami POSTGRES_PASSWORD: umami volumes: - ./sql/schema.postgresql.sql:/docker-entrypoint-initdb.d/schema.postgresql.sql:ro - umami-db-data:/var/lib/postgresql/data restart: always volumes: umami-db-data:
启动
# docker-compose up -d && docker-compose logs -f
原生态方式
这个是为了配合博皮使用,因为要调两个接口需要改下代码,正常使用推荐直接docker启动,不用看这块代码
克隆
git clone https://github.com/umami-software/umami.git
配置.env文件
!> 请确保这块配置且可连接成功再进行下一步操作
# cd umami/ # vi .env # DATABASE_URL=mysql://<username>:<password>@127.0.0.1:3306/<databaseName> // 示例 || 你也可以选择直接使用root账户 DATABASE_URL=mysql://umami:umamipassword@127.0.0.1:3306/umami
修改代码
?> 我是直接将认证那块注释了
# pages/api/website/[id]/stats.js # pages/api/website/[id]/active.js
编译项目
# yarn install # yarn build # yarn update-db
PM2
帮助命令 | pm2 --help
# npm install -g pm2 # pm2 start yarn --name umami -- start # pm2 startup # pm2 save
配置Nginx
这块是只针对源码启动的配置
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; } location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp4|ico)$ { proxy_pass http://localhost:3000; expires 30d; access_log off; } location ~ .*\.(js|css)?$ { proxy_pass http://localhost:3000; expires 7d; access_log off; } location ~ /(\.user\.ini|\.ht|\.git|\.svn|\.project|LICENSE|README\.md) { deny all; }
!> 如果涉及到需要请求一些API,获取数据,比如我这边集成到博皮,那就还需要对nginx增加以下配置
location ~* api/share { ## 如果是自己站点使用,这块建议使用自己域名通配符而不是* add_header Access-Control-Allow-Origin *; add_header Access-Control-Allow-Methods 'GET,POST,PUT,DELETE,PATCH,OPTIONS'; add_header Access-Control-Allow-Headers "DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization,x-umami-share-token"; if ($request_method = 'OPTIONS') { return 204; } 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; } location ~* api/website/.*/active { if ($request_method = 'OPTIONS') { return 204; } 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; }
访问
默认账户/密码: admin/umami
配置
验证
学无止境,谦卑而行.
标签:
umami
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库