FreshRSS
是一个轻量级、且功能强大的自托管RSS聚合服务器,它支持匿名阅读和自定义标记。得益于WebSub标准,FreshRSS能够接收来自兼容来源的即时推送通知,如Friendica、WordPress、Blogger、Medium等。FreshRSS本机支持基于XPath的基本Web抓取,用于不提供任何RSS/Atom提要的网站。
FreshRSS
还支持不同的登录方式,包括Web表单(包括匿名选项)、HTTP身份验证(与代理委派兼容)和OpenID Connect。
#01
APIs和客户端
FreshRSS
支持通过两种兼容的API从Linux、Android、iOS、Windows和macOS等平台的客户端访问服务器,两种API分别是Google Reader API
(最佳)和Fever API
(功能有限,效率较低)。下面是兼容FreshRSS
的 App 列表,Android端可选的 App 比较多,iOS/macOS 相对较少,Linux 和 Windows 则更少。笔者目前在 iOS/macOS 端使用Netnewswire
,完全免费,体验还不错。
#02
设置FreshRSS
安装完FreshRSS
后(安装方式见文末),在浏览器中使用IP+端口打开系统,首次打开需要对系统进行初始化设置。
1、选择语言
在Language
选择一种语言,你自己能认识的就行。
2、检查依赖项
这一步不需要设置什么,直接拉到页面底部,点击下一步
。
3、配置数据库
选择数据库类型,笔者建议直接使用SQLite
,简单方便,足够个人和小团队使用的,不要担心不够用。
4、设置默认用户
这一步很关键,设置一个默认的账号,输入自己能记住的用户名和密码,提交即可。
5、完成安装
OK,系统初始化设置完成。
6、登录系统
最后,使用第四步设置用户名和密码即可登录系统。
7、开启API功能
接下来,为了可以从移动端或桌面端客户端访问FreshRSS
,需要开启 API 访问功能。从设置中,点击认证
菜单,在右侧勾选允许API访问(用于手机应用)
,然后提交
。
接着点击账户
菜单,在右侧 API管理
中,设置API密码
,后续客户端连接都用这个密码,同样点击提交
。
#03
使用FreshRSS
以上服务器的基本设置就完成了,当然还有很多高级功能需要你自行去探索啦。接下来笔者以macOS版的Netnewswire
客户端为例,演示如何使用在客户端添加和更新RSS订阅。
1、打开设置
打开Netnewswire
后,在菜单栏点开Netnewswire
,然后选择Settings...
,打开设置界面。
2、添加Account
切换到Accounts
,点击➕,添加一个,在弹出面板中选择Self-hosted
下的FreshRSS
,然后点击Continue
。
3、填写FreshRSS服务器信息
在弹出的面板中填写你的FreshRSS
的API地址、账号和 API 密码(注意是API密码,不是登录密码)。其中 API 地址的格式为:ip:端口/api/greader.php
。
4、添加RSS订阅
现在到了见证奇迹的时候了,点击New Feed...
,URL中输入你要订阅网站 RSS 地址,Folder 选择FreshRSS
中的分类即可。
例如,笔者订阅自己的网站,则填写如下,最后点击Add
即可完成 RSS 订阅添加。
5、见证奇迹
最后,在Netnewswire
客户端中就可以看到刚刚添加的网站 RSS 订阅抓取到的文章内容啦,是不是很简单。其他平台或 App 操作基本也基本类似,相信这些小玩意一定难不倒聪明的你,尽情折腾吧!
#04
安装FreshRSS
安装FreshRSS
也非常简单,笔者准备了Docker和Docker Compose两种部署方式,任选一种即可。
1、Docker方式
docker run -d \
--name=freshrss \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Asia/Shanghai \
-p 8088:80 \
-v /path/to/data:/config \
--restart unless-stopped \
linuxserver/freshrss:latest
2、Docker Compose方式
---
version: "3.9"
services:
freshrss:
image: lscr.io/linuxserver/freshrss:latest
container_name: freshrss
environment:
- PUID=1000
- PGID=1000
- TZ=Asia/Shanghai
volumes:
- /path/to/data:/config
ports:
- 8088:80
restart: unless-stopped
以上两种方式中,
/path/to/data
改成你NAS上的文件夹路径,PUID
和PGID
改为你NAS上的用户ID和组ID。另外,笔者使用的是linuxserver出品的镜像,如果你使用FreshRSS官方的镜像,那么挂载的文件夹路径和环境变量会有些不同,请参考官方文档修改,切勿照搬照抄。
原创不易,如果觉得此文对你有帮助,不妨点赞+收藏+关注,你的鼓励是我持续创作的动力!
文章评论