如果装好了 Tiny Tiny RSS 发现信息源无法自动更新的话,可以试试以下几种解决办法。
方法一:开启简单更新模式
打开 config.php
配置文件,将 SIMPLE_UPDATE_MODE
参数设置为true
,这样每次打开 Tiny Tiny RSS 就可以开始更新信息源了。
define('SIMPLE_UPDATE_MODE', true);
方法二:使用 crontab 开启后台自动更新模式
还是打开 config.php
配置文件,将 PHP_EXECUTABLE
的 PHP 路径设置好:
# /usr/bin/php 为我的系统的 php 路径,仅供参考
define('PHP_EXECUTABLE', '/usr/bin/php');
如果找不到 PHP 路径的话,可以通过在站点目录下创建 <?phpecho phpinfo();
的 .php
文件后打开浏览器访问查看。
改好 config.php 文件后,需要创建一个 Linux 普通用户,之所以要另外创建一个用户,是因为更新脚本文件 update.php
或 update_daemon2.php
不能由 root 用户来执行,但是可以通过 apache
或者 Nginx
的运行用户来执行脚本计划(这里拿创建一个名叫 ttrss
的用户举例):
# 创建新用户
adduser ttrss
# 给新用户初始化密码
passwd ttrss
给相关目录设置 777
的权限:
chmod -R 777 feed-icons
chmod -R 777 lock
chmod -R 777 cache/export
chmod -R 777 cache/images
chmod -R 777 cache/upload
用 crontab 添加一个定时运行计划:
crontab 命令被用来提交和管理用户需要周期性执行的任务,与 windows 下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动 crond 进程,crond 进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。
先看下 crontab 定时计划的规则示例:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
* * * * * user-name command to be executed
由于 Tiny Tiny RSS 的更新脚本不能用 root 执行,所以需要用到上文创建的用户来执行计划:
# 编辑 cron 文件,写入 ttrss 用户,允许 ttrss 用户使用 crontab 命令
sudo vi /etc/cron.allow
# 以 ttrss 用户身份执行 crontab 计划
crontab -u ttrss -e
# 在打开的计划编辑页面输入指令,每45分钟执行一次计划
*/45 * * * * /usr/bin/php /你的tinyrss站点目录/update.php --feeds --quiet
注意:
定时时间可以自行修改
为了保证 crontab 正常运行,一定先在 cron.allow 中写入执行用户
/usr/bin/php 为我的系统的 php 路径,仅供参考
检查定时计划的配置是否成功:
方法一
# 在 root 身份下,查看 ttrss 用户的计划内容
cat /var/spool/cron/ttrss
# 查看 crontab 的 log 文件是否包含 ttrss 用户的计划内容
cat /var/log/cron
如图:
方法二
# 切换到 ttrss 用户身份下
su ttrss
crontab -l
# 同样可以看到该用户的计划内容
如图:
进一步确保 crontab 命令是否正常运行,在 ttrss 用户身份下执行:
/usr/bin/php /你的tinyrss站点目录/update.php --feeds
当终端开始运行计划,并显示信息源的更新时间,则说明定时任务配置成功,如图:
以上配置都完成后,Tiny Tiny RSS 就可以每45分钟在后台自动更新信息源了。
安装 Fever 插件,使 Tiny Tiny RSS 支持第三方客户端登陆
如果是 Mac 用户,又比较喜欢使用 RSS 订阅文章阅读的话,想必都会接触 Reeder
这款 app,接下来会说明如何让 Reeder 关联 Tiny Tiny RSS。
# 进入 Tiny Tiny RSS 站点的插件目录
cd ./plugins.local
# 安装 Fever 插件
git clone https://github.com/DigitalDJ/tinytinyrss-fever-plugin fever
打开网页端,进入 偏好设置
,选择 插件
,找到刚才装好的 Fever 后启用。
然后记得打开 启用API
:
设置第三方登录用的密码:
接下来打开 Reeder,选择 Fever
方式登录,Server
要填 Fever 的 api 地址 http://localhost/plugins.local/fever/
,Email
是 Tiny Tiny RSS 的用户邮箱,Password
是上面设置的第三方登录用的密码:
大功告成。
参考阅读
https://git.tt-rss.org/fox/tt-rss/wiki/UpdatingFeeds
https://tstrs.me/1451.html
https://sword.studio/200.html
https://phower.me/2020/03/Tiny%20Tiny%20RSS%20%E5%AE%89%E8%A3%85%E5%8F%8A%E5%A1%AB%E5%9D%91%E4%B9%8B%E8%B7%AF/
https://git.tt-rss.org/fox/tt-rss/wiki/UpdatingFeeds 提供的service 方法更简单啊