06月15, 2024

升级TT-RSS

突然发现我的TT-RSS跑不了了,提示PHP support for DOMDocument is required, but was not found.,一开始认为是升级了Debian导致PHP版本跟代码不兼容了,所以想着升级一下TT-RSS。(虽然发现并不是这个问题。)下面记录一下升级过程。

整体基本跟着官方文档来就行,有个别细节需要自己调整。主要参考Installing on a host machineUpdating Feeds这两个。

第一步,拉最新的代码。我发现TT-RSS更新还挺频繁的,最近几天都还有commit。我之前是直接拉的代码archive部署的,现在官方直接推荐直接用git拉,所以git clone即可:git clone https://git.tt-rss.org/fox/tt-rss.git tt-rss

第二步,配置config.php。我之前部署的版本太老,所以直接复制config.php-distconfig.php重新配置(原先变量都是用define的,现在都改putenv了,没法直接copy过来)。必须要配的其实就是db相关的以及部署路径了,其他的配置直接用默认的其实就行。

我是nginx+php-fpm+mysql,所以配置这些就行:

putenv('TTRSS_DB_HOST=dbhost');
putenv('TTRSS_DB_NAME=dbname');
putenv('TTRSS_DB_USER=dbuser');
putenv('TTRSS_DB_PASS=dbpassword');
putenv('TTRSS_SELF_URL_PATH=https://example.com/tt-rss');

putenv('TTRSS_DB_TYPE=mysql');
putenv('TTRSS_DB_PORT=3306');

第三步,更新数据库schema。TT-RSS在db这块的更新机制做得比较好,如果当前版本需要的db schema有更新的话,会明确告诉你,不会因为代码和db schema不匹配产生写坏的情况。

这里更新schema建议直接打开网页后,用TT-RSS网页上自己的更新机制来更新,点一下更新按钮就行了,不建议通过执行update.php来更新,因为可能会遭遇权限、运行环境等等问题。

如果打开网页提示PHP support for DOMDocument is required, but was not found.,需要apt install php-dom

第四步,启动后台抓取。如果之前搞过,这里可以不用搞。这里建议用systemd方式,因为crontab方式跟手动执行php没有任何区别,可能会遭遇上面说的权限、运行环境等问题。

systemd的话,创建/etc/systemd/system/ttrss_backend.service,写入:

[Unit]
Description=ttrss_backend
After=network.target mysql.service postgresql.service

[Service]
User=www-data
ExecStart=/opt/htdocs/tt-rss/update_daemon2.php

[Install]
WantedBy=multi-user.target

然后:

systemctl enable ttrss_backend
systemctl start ttrss_backend

可以通过journalctl -u ttrss_backend看日志。

本文链接:https://debug.fanzheng.org/post/sheng-ji-TT-RSS.html

-- EOF --

Comments

评论加载中...

注:如果长时间无法加载,请针对 disq.us | disquscdn.com | disqus.com 启用代理。