说明:关于RSS
订阅器,之前发过不少了,比如Feedbin、FreshRSS等,功能都挺强大的,这里就再介绍个轻量级的RSS
订阅器selfoss
,使用起来是非常简单的,界面颜值也还不错,支持很多种订阅和网站,比如Twitter
、Github
、Tumblr
等。
截图
安装
Github地址:https://github.com/SSilence/selfoss
环境要求:PHP 5.4+
,MySQL 5.5+
、PostgreSQL
或Sqlite
,Apache
、Nginx
或Lighttpd
这里就大概说3
种安装方法,宝塔安装、手动安装和Docker
安装,数据库均使用Sqlite
,建议直接使用Docker
安装。
1、安装宝塔
#CentOS系统
wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
#Ubuntu系统
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh
#Debian系统
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh
安装完成后,进入面板,点击左侧软件管理,然后安装PHP 5.6+
、Nginx
或Apache
。
2、安装程序
再点击左侧网站,添加域名,然后在SSH
客户端运行命令:
#进入网站根目录,将路径修改成自己的再运行
cd /www/wwwroot/www.moerats.com
#下载selfoss
wget https://github.com/SSilence/selfoss/releases/download/2.18/selfoss-2.18.zip
#解压并重命名配置文件
unzip selfoss-2.18.zip && rm -rf selfoss-2.18.zip
cp defaults.ini config.ini
#给予文件夹权限
chown -R www:www ./
chmod 775 data/cache data/favicons data/logs data/thumbnails data/sqlite public/
Nginx
还需要点击站点设置,设置伪静态,代码如下:
location ~ ^/favicons/.*$ {
try_files $uri /data/$uri;
}
location ~ ^/thumbnails/.*$ {
try_files $uri /data/$uri;
}
location ~* ^/(data\/logs|data\/sqlite|config\.ini|\.ht) {
deny all;
}
location / {
index index.php index.html index.htm;
try_files $uri /public/$uri /index.php$is_args$args;
}
然后点击配置文件,删除以下几行,代码为:
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
error_log off;
access_log off;
}
location ~ .*\.(js|css)?$
{
expires 12h;
error_log off;
access_log off;
}
然后就可以打开站点了,最开始是没登录界面的,也就是每个人都可以直接使用,然后我们可以编辑config.ini
配置文件来添加登录界面,修改以下参数:
#分别为站点地址,登录用户名和哈希密码
base_url=https://www.moerats.com
username=moerats
password=kjl1289$swpaf4JPllpKJQp94h/LF1
密码可以访问http://www.moerats.com/password
生成,将域名修改成自己的selfoss
站点域名,更多的配置文件设置可以查看官方说明→传送门。
3、设置RSS刷新
点击宝塔左侧-计划任务,类型访问URL
,地址填上http://www.moerats.com/update
,将域名修改成自己的,时间的话,建议每30
分钟。
手动安装
这里只适用于Debian8
、9
系统,建议直接Debian 9
。
1、安装环境
#Debian 8系统
echo "deb http://packages.dotdeb.org jessie all" | tee --append /etc/apt/sources.list
echo "deb-src http://packages.dotdeb.org jessie all" | tee --append /etc/apt/sources.list
wget --no-check-certificate https://www.dotdeb.org/dotdeb.gpg
apt-key add dotdeb.gpg
apt update
apt install nginx cron unzip php7.0-cgi php7.0-fpm php7.0-curl php7.0-gd php7.0-mbstring php7.0-xml php7.0-sqlite sqlite -y
#Debian 9系统
apt update
apt install nginx unzip cron php7.0-pdo php7.0-fpm php7.0-tidy php7.0-gd php7.0-mbstring php7.0-xml php7.0-sqlite sqlite -y
2、安装程序
#新建网站根目录
mkdir -p /www/wwwroot/selfoss
#进入网站根目录
cd /www/wwwroot/selfoss
#下载selfoss
wget https://github.com/SSilence/selfoss/releases/download/2.18/selfoss-2.18.zip
#解压并重命名配置文件
unzip selfoss-2.18.zip && rm -rf selfoss-2.18.zip
cp defaults.ini config.ini
#给予文件夹权限
chown -R www-data:www-data ./
chmod 775 data/cache data/favicons data/logs data/thumbnails data/sqlite public/
3、新建站点配置文件
#将域名修改为自己的,然后一起复制进SSH运行即可
cat > /etc/nginx/conf.d/selfoss.conf << "EOF"
server {
listen 80;
server_name www.moerats.com;
root /www/wwwroot/selfoss;
index index.html index.php;
location ~* \ (gif|jpg|png) {
expires 30d;
}
location ~ ^/favicons/.*$ {
try_files $uri /data/$uri;
}
location ~ ^/thumbnails/.*$ {
try_files $uri /data/$uri;
}
location ~* ^/(data\/logs|data\/sqlite|config\.ini|\.ht) {
deny all;
}
location / {
index index.php index.html index.htm;
try_files $uri /public/$uri /index.php$is_args$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
}
}
EOF
再使用systemctl restart nginx
命令重启Nginx
生效。如果想给RSS
站点加用户名密码登录的可参考上面的宝塔安装方法。
4、设置RSS刷新
#设置为每30分钟执行一次,将域名修改为自己的
echo "*/30 * * * * /usr/bin/curl -Ls 'http://www.moerats.com/update' >/dev/null" > bt.cron
crontab bt.cron
rm -rf bt.cron
使用求最后crontab -l
命令查看添加成功没。
Docker安装
1、安装Docker
#CentOS 6
rpm -iUvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum update -y
yum -y install docker-io
service docker start
chkconfig docker on
#CentOS 7、Debian、Ubuntu
curl -sSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker
2、拉取镜像
docker run --name selfoss -d -p 8000:8888 -e CRON_PERIOD=30m -v /root/selfoss:/selfoss/data hardware/selfoss
配置文件和数据都存放在/root/selfoss
目录,rss
刷新间隔为30
分钟,都可自行修改。
此时站点访问地址为ip:8000
,如果想加登录用户和密码的,访问ip:8000/password
生成hash
密码,再编辑/root/selfoss/config.ini
文件,修改如下:
#分别为登录用户名和哈希密码
username=moerats
password=kjl1289$swpaf4JPllpKJQp94h/LF1
然后使用docker restart selfoss
命令重启生效。
最后如果你要是想看到订阅文章里的全部内容的话,那就需要其它站点支持全文RSS
,而不是摘要,对于摘要RSS
的,可以通过工具转换成全文RSS
,这里提供2
个转换的站点。
https://feedex.net/
https://fivefilters.org/content-only/
最后对于其它新闻网站,B
站什么的,可以借用万能的RSS
生成工具RSSHUB
,介绍和使用查看→传送门。
版权声明:本文为原创文章,版权归 Rat's Blog 所有,转载请注明出处!
本文链接:https://www.moerats.com/archives/948/
如教程需要更新,或者相关链接出现404,可以在文章下面评论留言。
感谢分享,教程很不错
我太崇拜你了!
大佬,看了很多rss,能推荐一个对api支持比较好的吗?想用api开发第三方应用,尤其是需要支持搜索功能。miniflux2.0这个貌似不错,但是就是一直安装不成功?看了你发的那个教程,在建立容器的时候总是让输入用户名和密码,不知道咋回事儿
miniflux2.0教程更新了,你重新安装试试
是不是他支持的网站, 不需要源网站支持atom/rss 他都可以订阅? 有这种把主流网站订阅并转为atom/rss外链的工具吗?
工具好像有,不过我忘了,挺多的
博主,可以详细说一下 config.ini 密码怎么设置吗?我在 config 设置了用户名密码,却无法用设置好的用户名和密码登录,提示 "invalid username/password".
配置文件的密码需要hash,访问路径为/password的页面,可以直接生成,然后填进去即可
好像没办法自动更新
定时任务设置了没
怠惰啊 催更
谢谢!刚刚安装了,阅读挺舒服的啊!
不过就没有分类只有Tag。阅读方式好像也只有一种。
借鉴成分过于明显的文章:https://www.moewah.com/archives/1897.html
是的,主要就是精简、轻量为主。
好的好的,今天就水一篇。
请问有什么chrome插件可以配合selfoss实现实时推送吗
感谢分享,以前Google的还能用的时候还用阅读器,现在就直接用feeder.co,打开浏览器提示有更新,就点过去阅读+评论。比阅读器还方便点。
feeder.co你用的免费还是收费版呢?我目前用的Inoreader
innoreader +1
feeder.co挺不错,之前用过一段时间
厉害, 主题不错哦, 回复的动画也十分厉害。
只是小特效而已
感谢楼主分享。