自建RSS服务——Tiny Tiny RSS
这篇文章使用的是TTRSS老版本安装方式,新版的Docker安装请参考最新的文章Tiny Tiny RSS再次搭建。
很早之前就有了自建RSS服务的想法,但是Feedly和Inoreader的基(mian)础(fei)套餐真的太香了,懒人表示无法拒绝。结果,不出所料,Feedly和Inoreader在4月初的时候陆续被墙,当时还以为Reeder 3停更了。
为了解决日常的RSS阅读,自建RSS服务就提上了日程从冒出想法到搞定实际只花了半天时间。
本文我就来详细介绍一下搭建多平台RSS服务——Tiny Tiny RSS(TTRSS)。
最新版的TTRSS更新了安装方式,目前官方推荐使用docker方式安装,具体的安装和迁移请等待相关文章的更新。
1 TTRSS
冒出自建RSS服务之前,我其实已经删掉Reeder准备放弃移动端了。网上推荐的Win平台RSS阅读器,发现大多都是Outlook、ThunderMail之类的邮件客户端;虽然我也用”宇宙最强的邮件客户端”——Outlook,但我并不想把娱乐消遣和工作搅和在一起。
在小众软件的一篇文章的评论里面,我发现了Tiny Tiny RSS(TTRSS),一下子就发现它非常符合我的情况:
- 国内有闲置的服务器可用;
- 订阅源偏重国内(国外源较多建议使用国外的服务器);
- 时间较多的白嫖党。
说干就干。花了一下午把TTRSS给搞定了,并已经成功在Reeder上登录、阅读、标记。
2 服务器配置
闲置的服务器是在两年前买的腾讯云”1C+2G+1Mbps”,无域名,一直没有利用起来。
首先,在腾讯云控制台重装系统,这是清空系统防止出现程序冲突。如果服务器已经运行其它任务,可以无视,但出现问题需要考虑会不会是已运行任务的冲突。因为比较偏爱CentOS,所以操作系统选择了CentOS。
重装完服务器的系统先不要关掉控制台,在左侧找到”安全组”,新建一个安全组规则。
我开通了3个端口:
- 8888 –> 宝塔面板默认端口;
- 2333 –> 预留给宝塔面板的端口;
- 9999 –> 预留给TTRSS的端口。
注:宝塔面板和TTRSS的端口可以选自己喜欢的,只要不和现有的冲突就行。
新建安全组规则后,将这个规则绑定到服务器。
3 服务器环境安装
3.1 宝塔面板安装
云服务器的配置结束后,就可以使用SSH工具登录服务器了(别告诉我你把密码给忘记了)。
SSH工具(如XShell)使用教程自行百度(喜欢谷歌的可以选择番羽土啬)。
使用SSH登录服务器后,根据系统使用下面的命令安装宝塔面板,其它操作系统的安装命令请到宝塔面板官网查看。
使用宝塔面板的目的是为了安装LNMP并为TTRSS建立站点,已经安装过或者对此精通的大佬请自觉跳至TTRSS站点建立。
1 | # CentOS 安装命令 |
安装过程不是特别慢,大概几分钟就搞定了。宝塔面板安装成功后会在最后有”Completed”字样,并在字样上方有访问宝塔面板的默认URL及账号密码,请务必将这几行字符复制出来并暂时保存起来。这里的图片没有截,请仔细阅读这段文字。
3.2 LNMP安装
使用宝塔面板安装后输出的URL和账号密码登录宝塔面板,然后在弹出的框内选择LNMP进行安装。
如果你看到这篇文章的时候PHP没有更新8.0的话,PHP版本选择最新的;服务器配置如果是1核1G,MySQL版本请自觉选用5.6及以下;phpMyAdmin可以不选。我安装时没有截图,这张图是官方论坛里截取的,使用图里的版本也可以。
安装过程看具体服务器配置,我的2G内存的跑了十分钟左右。等任务队列全部跑完就说明环境安装好了。
接下来需要安装PHP的扩展fileinfo,否则TTRSS的初始化会出错。几年前我搭建我的WordPress的时候就因为没安装fileinfo,一直初始化失败。
在左侧边栏中选择”软件商店”,选择分类”已安装”,点击PHP的”设置”。
在弹出的界面中选择左侧的”安装扩展”,找到fileinfo并点击安装,安装需要等待几秒钟。
到这里,LNMP的环境就搭建好了,但我还是要多说一句,请务必在左侧边栏的”面板设置”中修改面板登录端口、账号密码以及安全入口,端口使用安全组预留给宝塔面板的端口。
3.3 TTRSS站点建立
在左侧边栏中选择”网站”,点击”添加站点”。
在弹出的界面中填写站点的信息。
填写要求:
域名 - 使用”http://服务器外网ip:端口号”的格式,端口号使用安全组预留给TTRSS使用的端口;可以使用域名代替外网ip,甚至使用https
根目录 - 为了方便,我使用了”/www/wwwroot/ttrss”
数据库 - 选择”MySQL”,编码为”utf-8”,用户名与密码自己输入并记住
4 TTRSS安装及配置
此时服务器上的站点还是空的网站,需要从TTRSS官网下载TTRSS并进行配置。
4.1 TTRSS下载
虽然使用服务器也可以获取TTRSS,但下载速度太感人,还是在PC上下好了传上去吧。不信邪的可以使用下面的命令。
1 | git clone https://git.tt-rss.org/fox/tt-rss.git ttrss |
建议大家使用浏览器访问TTRSS的仓库,下载zip包。如果这个仓库失效可以访问TTRSS官网,再进入仓库下载。
成功下载TTRSS后,使用宝塔面板将zip包上传到服务器的/www/wwwroot/目录下;
解压这个zip包,将tt-rss文件夹内的所有文件剪切到/www/wwwroot/ttrss/目录下。
小文件上传速度堪忧,请务必在服务器解压zip包。
4.2 TTRSS初始化
打开浏览器,访问”http://服务器外网ip:端口号/install”,进入TTRSS的初始化。
数据库选择MySQL,端口选择3306,用户名密码是建立站点时设置的,希望没有忘记。然后点击”Test configuration”。
网页下方出现下图的内容,点击”Initialize database”。
接着,在出现的内容中点击”Save configuration”,让系统自己保存配置。
到此,TTRSS就配置结束了,访问”http://服务器外网ip:端口号”即可登录TTRSS了。
使用默认用户名及密码(admin,password)即可登录TTRSS,第一次登录时系统会提示重设密码。
4.3 TTRSS配置——自动更新
可能是因为bug的原因,目前的TTRSS通过”偏好设置”无法自动更新,需要使用服务器的非root用户的crontab进行自动更新。配置过程如下。
使用SSH登录服务器,输入下面这个命令。
1 | crontab -u www -e |
然后,点击”i”进入编辑模式,插入以下命令实现1小时更新一下信息源。请注意php后的路径和命令中的空格。
1 | * */1 * * * php /www/wwwroot/ttrss/update.php --feeds > /dev/null |
最后,使用”Esc”和”:wq”退出vim编辑,TTRSS就可以自动更新了。
至于订阅源的配置步骤就不赘述了。
4.4 TTRSS配置——多平台支持/fever
目前大部分RSS的客户端可以使用fever和GoogleAPI登录,但遗憾的是TTRSS不原生支持fever API。因此,需要配置fever插件。
- 下载fever插件并解压,使用宝塔面板将整个fever文件夹上传到/www/wwwroot/ttrss/plugins/目录下。注意:整个fever文件夹。
- 在TTRSS的偏好设置中,勾选”允许外部客户端通过API来访问该账户”。
- 在TTRSS的偏好设置中,选择”插件”页面,勾选fever,点击”启用选择的插件”。
- 刷新页面,在TTRSS的偏好设置中,选择”Fever Emulation”页面,设置密码。密码可与TTRSS账户密码相同,用于客户端访问TTRSS。
下面就可以在客户端使用Fever访问TTRSS了。下面是Reeder 3的配置页面。
服务器填写”http://服务器外网ip:端口号/plugins/fever”;邮箱填写TTRSS账号用户名,不一定要邮箱;密码是在”Fever Emulation”页面设置的密码。
总结
整篇文章写下来花了两天时间,有几张图片因为搭建时遗忘而没有截图,但整个搭建描述还是挺清晰的(自我评价的)。
如果参考了这篇TTRSS搭建教程,请别忘了一键三连收藏分享哦。