woshiluo
2019-05-31 18:12:28
这里有一篇我博客上的,省略了一下搭建细节,对于已经有一定维护经验的人可能更加适合一些: https://blog.woshiluo.com/1211.html
RSS
一说起这个词语,绝大多数人想到的都是 10 年以前,一行行字母,没有任何样式的网页,跟现今比起来,几乎没有任何的优势
故此我们总是觉得,RSS 已经成为了时代的眼泪,但是 RSS 的核心便是流,信息流,这和当下的媒体传播方式并无二,故只要运用得当,RSS 并不过气
因为涉及到搭建各种各样的环境,特此摆出本文所基于服务器环境
代码框里的是我服务器的,并不是必须的
你可以选择搭建在自己电脑上,也可以搭建在服务器上
$ uname -a
Linux Hostname 4.9.0-9-amd64 #1 SMP Debian 4.9.168-1+deb9u2 (2019-05-13) x86_64 GNU/Linux
服务器使用 Apache
和 php7.0-fpm
$ apachectl -v
Server version: Apache/2.4.39 (Unix)
Server built: <随服务器变动>
注: 可以直接使用 apt-get
安装
$ mysql -v
mysql Ver 8.0.16 for Linux on x86_64 (MySQL Community Server - GPL)
服务器需要 node >= 8
以下命令默认拥有足够的权限
许多网站都有自己的 RSS,通常会在页面的一个小角落里,有着一个 Feed / RSS 订阅,当然,有些时候,你也可以试着在 Url 后面加/feed
,说不定就中奖了呢?
但是有很多时候,网站并不会给你提供 RSS 订阅源,原因也很容易理解,如果你使用自家的 App / 网页段,一来增加用户粘性,二来方便推送广告,加上绝大多数用户不懂 / 懒得懂 其中的问题,只顾使用,并不会激起大多数用户反感
那我们的 RSS 作用只有看几个新闻媒体每天的新闻了?
当然不是!
这有一款神奇的玩意儿
项目链接: https://github.com/DIYgod/RSSHub
这个项目能够将很多我们所熟悉的东西,变成简洁的 RSS,如果你有不满,你甚至可以自己动手,丰衣足食 —— 自行扩展,因为这是一个开源软件
你也可以不搭建,直接使用官方的服务,但是会少一些功能
clone 项目
cd /opt/
git clone https://github.com/DIYgod/RSSHub.git
cd ./RSSHub
安装 NPM 包
npm install
因为众所周知的原因,NPM 官方源在国内异常的慢,推荐使用镜像
RSSHub 通过环境变量来配置
在项目根目录建立一个 .env
,按照 NAME=VAL
的方式进行配置
关于配置选项,请查阅 官方文档 ,不做赘述
编辑 /etc/systemd/rsshub.service
[Unit]
Description=RSSHub Service
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=Simple
Group=www-data
User=www-data
WorkingDirectory=/opt/RSSHub
ExecStart=/usr/bin/npm start >/dev/null
[Install]
WantedBy=multi-user.target
然后执行 systemctl daemon-reload
启动
systemctl start rsshub
停止
systemctl stop rsshub
设置自动启动
systemctl enable rsshub
有关 API 接口,请参阅 官方文档
默认 RSSHub 会监听所有 IP 上的 1200 端口,您可以自行配置监听 IP 和端口
如果你选择使用客户端订阅 RSS,你会发现,没有同步,如果更新速度比较快,还容易被刷掉一些奇妙的东西,如果你有许多的 RSS 订阅,甚至没有办法同步已读
对于这种问题,绝大多数长期使用 RSS 的人都有一个解决方法,使用在线服务,但是在线服务通常会面临着各种各样的问题,甚至还会有收费限制
所以我在此推荐一个自搭 RSS 服务 —— Tiny Tiny RSS
官网: https://tt-rss.org/
官方支持 Docker 一键搭建,不过因为各种各样的原因,我选择使用比较老旧的方式来搭建
clone 最新版本到你想要安装的目录 (最好提前和你的 Web 服务器配置好)
cd /var/www/html
git clone https://git.tt-rss.org/fox/tt-rss.git
mv tt-rss rss
然后直接通过浏览器访问
请按要求填写你的数据库账号密码,官方并不建议使用 MySQL,如果有条件,请使用 PostgreSQL
安装完后,安装完后会跳转到登陆页面,默认用户 admin
密码 password
登陆后请在第一时间修改密码
接着,你需要定时运行 update.php
来自动更新 RSS
运行
crontab -u www-data -e
在最后一行写入
*/10 * * * * (/usr/bin/php /var/www/html/rss/update.php --feeds >/var/www/html/temp.out)
(每 10 min 运行一次)
让后你就可以享受 RSS 的快乐了
TT-RSS 使用 CSS 来实现主题功能,因此主题的安装和切换都非常简单,这里有一个推荐的主题 levito/tt-rss-feedly-theme
说起来比较遗憾,貌似最近的大改动使得很多扩展都无法正常运行,我并没有找到一个 能用 && 有用 的 的插件
但是说来有意思的是,大多数 TT-RSS 的扩展都是为了使其更加符合主流规范,但是 TT-RSS 正在逐渐变得主流起来,所以有很多的客户端里面都有 TT-RSS 的原生支持
目前我在用的安卓是 Feedme,Linux 直接网页端了,体验很不错
本文面对有一定搭建各种各样东西经验的人,介绍了 TT-RSS 和 RSShub 并进行了推荐和搭建指南
对所有读者介绍并推荐了 RSS 这一消息聚合规范
一定程度上是作者自我瞎说,各位酌情观看
随着时代的发展,各个平台都开始明白流量为王的这一规律,逐渐开始隐藏 RSS 这一站外阅读消息的方式,使得诸如我们一代的年轻人只能在一些年代久远的网站找到这个名字,加上 今日头条 百家号 等等资讯聚合平台的出现,使得有些人甚至未曾听过这个名字
「RSS 不是过时的产物吗?」,这是我一个同学在听到这个词语的反应,当然,这个反应在同龄人来说已经稀少,毕竟他是竞赛选手,但是更加普通的学生,可能会变成「什么是 RSS?」这种反应
确实,就 RSS 本身在协议这个角度而言,它已经过时了,使用率低之又低,但是纵使是那些所谓的算法推荐,还是自动推送,却也始终未曾偏离 RSS 的 内容 标题 时间 的要素,依然是 「时间轴上的信息流」
平台是没有做错的,将用户拉到自己平台上来,增加平台的用户活跃度,增加广告被看到的几率,为了生存,这是应当做的
对于我们来说,在一个聚合平台上面也许也可以满足我们的需求,但同时也在将自己的选择权让给了平台,将隐私送给了他人,将思维给了算法
从这一角度而言,RSS 的有限,使得我们更加容易的获取自己想要的内容,没有了算法的智能推荐,将更多的思想空间留给自己
RSSHub 解决了网站没有 RSS 的问题,Tiny Tiny RSS 解决了信息整理的问题,通过这一手段,我们可以控制住自己的信息获取渠道,将思考和选择的权利留在自己手上
如何搭建属于自己的 RSS 服务,高效精准获取信息: https://sspai.com/post/41302
我有特别的 RSS 使用技巧: https://diygod.me/ohmyrss