搭建个人RSS资讯聚合系统:信息收集效率翻倍
📅 2025年6月25日 · 实战宝典
在信息过载的时代,每天刷社交媒体、新闻App、技术论坛,看似获取了海量信息,实则被碎片化的推送消耗了大量时间。RSS(Really Simple Syndication)——这一诞生于1999年的古老技术,恰恰是解决信息过载的最佳方案。搭建一个自托管的RSS聚合系统,你可以将分散在几十个网站上的内容集中到一个统一的阅读器中,按优先级、按类型筛选阅读,效率提升立竿见影。
一、方案选择:三大主流RSS聚合器对比
目前最受推崇的三款自托管RSS聚合系统分别是Miniflux、FreshRSS和Tiny Tiny RSS(TT-RSS)。以下是它们的核心差异:
| 维度 | Miniflux | FreshRSS | Tiny Tiny RSS |
|---|---|---|---|
| 开发语言 | Go(单二进制) | PHP | PHP |
| 资源占用 | 极低 (~20MB RAM) | 中等 (~100MB RAM) | 较高 (~200MB RAM) |
| 数据库 | SQLite / PostgreSQL | SQLite / MySQL / PostgreSQL | PostgreSQL |
| 安装难度 | ⭐⭐⭐(最简单) | ⭐⭐(简单) | ⭐⭐(简单) |
| 主题定制 | 有限 | 丰富 | 丰富 |
| API支持 | ✅ Google Reader API | ✅ Google Reader / Fever API | ✅ 自有API |
| Docker支持 | ✅ 官方镜像 | ✅ 官方镜像 | ✅ 社区镜像 |
| 全文抓取 | ✅ 内置 | ✅ 内置(XPath规则) | ✅ 插件支持 |
综合推荐:Miniflux。原因有三:第一,Go语言编写,单二进制文件,部署和维护极其简单;第二,资源占用极低,一台1核1G的云服务器可以轻松运行;第三,提供标准的Google Reader API,几乎所有RSS客户端都兼容。
二、Miniflux安装实战
▎方案A:二进制文件直接安装(推荐)
# 1. 下载最新版Miniflux(以Linux amd64为例)
wget https://github.com/miniflux/v2/releases/latest/download/miniflux-linux-amd64
chmod +x miniflux-linux-amd64
sudo mv miniflux-linux-amd64 /usr/local/bin/miniflux
# 2. 创建数据库(使用SQLite,最简单)
touch /var/lib/miniflux.db
chmod 600 /var/lib/miniflux.db
# 3. 创建配置文件
mkdir -p /etc/miniflux
cat > /etc/miniflux/env << 'EOF'
DATABASE_URL=sqlite3:///var/lib/miniflux.db
RUN_MIGRATIONS=1
CREATE_ADMIN=1
ADMIN_USERNAME=admin
ADMIN_PASSWORD=你的强密码
LISTEN_ADDR=127.0.0.1:8080
POLLING_FREQUENCY=15
BATCH_SIZE=20
FETCH_ODYSEE_WATCH_TIME=1
EOF
# 4. 运行数据库迁移并创建管理员账户
miniflux -c /etc/miniflux/env
# 5. 创建systemd服务
cat > /etc/systemd/system/miniflux.service << 'EOF'
[Unit]
Description=Miniflux RSS Reader
After=network.target
[Service]
EnvironmentFile=/etc/miniflux/env
ExecStart=/usr/local/bin/miniflux
Restart=always
User=root
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable --now miniflux
# 6. 验证运行状态
systemctl status miniflux
curl http://127.0.0.1:8080
▎方案B:Docker部署
# 使用Docker Compose
mkdir miniflux && cd miniflux
cat > docker-compose.yml << 'EOF'
version: '3.8'
services:
miniflux:
image: miniflux/miniflux:latest
ports:
- "127.0.0.1:8080:8080"
depends_on:
- db
environment:
- DATABASE_URL=postgres://miniflux:secret@db/miniflux?sslmode=disable
- RUN_MIGRATIONS=1
- CREATE_ADMIN=1
- ADMIN_USERNAME=admin
- ADMIN_PASSWORD=你的强密码
db:
image: postgres:15-alpine
environment:
- POSTGRES_USER=miniflux
- POSTGRES_PASSWORD=secret
- POSTGRES_DB=miniflux
volumes:
- miniflux_db:/var/lib/postgresql/data
volumes:
miniflux_db:
EOF
docker compose up -d
三、配置Nginx反代
为了让Miniflux通过域名访问并启用HTTPS,需要配置Nginx反向代理:
# 创建Nginx配置
cat > /etc/nginx/sites-available/reader.yourdomain.com << 'EOF'
server {
listen 80;
server_name reader.yourdomain.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl http2;
server_name reader.yourdomain.com;
ssl_certificate /etc/letsencrypt/live/reader.yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/reader.yourdomain.com/privkey.pem;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
EOF
ln -s /etc/nginx/sites-available/reader.yourdomain.com /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx
四、配置技巧
▎添加订阅源
登录Miniflux Web界面后,点击右上角菜单 → 添加订阅,输入RSS地址即可。以下是一些高质量的信息源推荐:
- 科技博客:Hacker News(hnrss.org)、Ars Technica、The Verge、36氪、虎嗅
- 行业新闻:澎湃新闻、界面新闻、财新(需订阅)
- 论文更新:arXiv特定方向的RSS(如 cs.AI、cs.CL)、Google Scholar 引用提醒
- 开发者资源:GitHub Trending、Stack Overflow 热门问题、各语言官方博客
- 个人站点:你关注的独立博客、Substack 通讯
▎设置过滤规则
Miniflux支持基于关键词的条目过滤:设置 → 过滤规则 → 创建新规则。示例规则:
# 自动标记包含特定关键词的文章为已读(不感兴趣)
规则1: 标题包含 "广告" "推广" "促销" → 自动标记已读
规则2: 标题包含 "裁员" "收购" → 加星标(重点关注)
# 仅在特定订阅源上应用规则
规则3: 来源 "36氪" 且 标题包含 "融资" → 自动标记已读
▎API调用与第三方客户端
Miniflux提供兼容Google Reader的API,你可以使用任意RSS客户端读取:
# 获取API端点信息
curl -u admin:密码 https://reader.yourdomain.com/v1/me
# 获取未读文章数量
curl -s -u admin:密码 https://reader.yourdomain.com/v1/entries?status=unread&limit=1 | python3 -m json.tool
# Python脚本示例:获取今日未读文章标题
import requests
url = "https://reader.yourdomain.com/v1/entries"
resp = requests.get(url, auth=('admin', '密码'), params={'status': 'unread', 'limit': 20})
for entry in resp.json()['entries']:
print(f"[{entry['feed']['title']}] {entry['title']}")
推荐第三方客户端:
- 移动端:Reeder(iOS,¥30)、Fiery Feeds(iOS,免费+内购)、Read You(Android,开源免费)
- 桌面端:NetNewsWire(macOS,免费开源)、Fluent Reader(Windows,免费开源)、NewsFlash(Linux,免费)
五、日常使用场景与效率分析
▎场景1:晨间信息简报
每天早上打开Reeder或Fluent Reader,按以下流程处理:
- 先看加星标的重点文章(约5分钟)
- 滚动浏览标题,感兴趣的点击全文阅读(约15分钟)
- 不感兴趣的快速标记已读(约2分钟)
- 看到有价值的文章,通过分享功能保存到笔记或稍后读工具
全程约20-30分钟,覆盖30+信息源,效率远超刷社交媒体。
▎场景2:论文追踪
研究人员可以订阅特定方向的arXiv分类和Google Scholar提醒。Miniflux的全文抓取功能可以自动获取论文的摘要和PDF链接,配合星标功能标记需要精读的论文。每天花10分钟浏览新论文标题和摘要,一周下来不会漏掉任何重要研究进展。
▎场景3:竞品监控
产品经理和创业者可以订阅竞品公司的官方博客、新闻稿以及行业媒体中与竞品相关的标签。Miniflux的过滤规则可以帮助自动标记股票、融资、高管变动等关键信息,确保第一时间掌握行业动态。
▎效率收益分析
| 对比维度 | 刷社交媒体/新闻App | 自托管RSS聚合系统 |
|---|---|---|
| 每日耗时 | 1-2小时碎片化 | 20-30分钟集中阅读 |
| 信息噪声 | 大量推送和广告 | 自主筛选,可有过滤 |
| 阅读深度 | 碎片化,浅阅读 | 可深度阅读全文 |
| 信息覆盖面 | 算法推荐,信息茧房 | 自定义,全面覆盖 |
| 隐私保护 | 数据被商业平台利用 | 完全自控 |
简单计算:每天减少30分钟碎片化信息浏览,一年就是182.5小时——相当于22.8个工作日。搭建RSS聚合系统的投入时间约1-2小时,回报率超过100倍。
六、总结与下一步
自托管RSS聚合系统的核心价值在于「信息的主权」——你决定看什么、什么时候看、用什么工具看。Miniflux凭借极简+极稳的特性,是目前最值得投入的自托管方案。
进阶方向:
- 结合
rss-bridge生成那些没有RSS的网站的Feed - 使用
wallabag搭建稍后读系统,与Miniflux联动 - 通过Miniflux API对接AI摘要工具(如OpenAI),自动生成阅读摘要
📝 综合自公开媒体报道及开源社区文档整理