快轉到主要內容

自架RSS網頁閱讀器 FreshRSS + Fluent Reader,取回閱讀自主權

分類   Linux系統 Self-hosting自架
標籤   RSS Feed
🗓️ 民國113年 甲辰年
✍ 切換正體/簡體字
目錄

用Docker架一個自動爬取網站RSS資訊的「FreshRSS」伺服器,隨時隨地用電腦與手機瀏覽。

1. 使用RSS的動機
#

為什麼要用RSS?十年前就有很多大大寫過理由了,例如電腦玩物的這篇: 社群時代,你還在手工訂閱嗎?

相信不用Ivon贅述。即使在現在,RSS依然是社群媒體以外一個很好的資訊來源管道,協助你整合資訊,不被演算法控制,取得閱讀自主權。

Ivon使用RSS的目的,除了打造自己的資訊流以外,就是將一些臭味相投的小眾部落格收集起來,他們可能轉瞬即逝,所以用RSS訂閱起來就不會錯過了。

你可能會說現在很多網站壓根就沒考慮到RSS功能,或是根本就把該功能移除了。

沒有RSS,那麼隨機看到超ㄅㄧㄤˋ的網頁該怎辦?你應該馬上將那個網頁送到 Internet Archive拍快照,永久封存。

我幫你挑了很酷的標本罐

…沒有啦,你有「RSS Bridge」可以自動依照網頁產生RSS,所以即使網站不支援RSS還是有辦法訂閱。

回到正題,如何搞RSS閱讀器呢?

我不想依賴他人的RSS訂閱服務(例如Feedly),免得哪天網站倒了資料也沒了,所以自架。選擇有:FreshRSS、Miniflux、Tiny Tiny RSS

我選擇FreshRSS,一款簡單易用的RSS伺服器,提供網頁界面,隨時用電腦或手機讀RSS文章。

FreeRSS的介面看起來就像2010年的Gmail。是的,真的蠻復古的介面,嘿,但是速度很快!

若是嫌FreshRSS界面太醜,你可以用API的方式,將其分享給比較漂亮的RSS閱讀器,例如跨平台的Fluent Reader。

2. 架設FreshRSS伺服器
#

  1. 在Linux安裝 Docker

  2. 新增儲存資料目錄

mkdir -p ~/Applications/freshrss

cd ~/Applications/freshrss
  1. 參考 FreshRSS官方範本,撰寫docker-compose.yml
services:
  freshrss:
    ports:
      - "8192:80" # 暴露的通訊埠,我把80改成8192
    image: freshrss/freshrss:latest
    container_name: freshrss
    hostname: freshrss
    restart: unless-stopped
    logging:
      options:
        max-size: 10m
    volumes:
      - ./data:/var/www/FreshRSS/data
      - ./extensions:/var/www/FreshRSS/extensions
    environment:
      TZ: Asia/Taipei
      CRON_MIN: '3,33'
      TRUSTED_PROXY: 172.16.0.1/12 192.168.0.1/16
  1. 啟動服務
docker compose up -d
  1. 瀏覽器開啟http://Linux電腦區域IP:8191,新增帳號登入FreshRSS。

  2. 關於要如何從外網存取FreshRSS,你可以做個Cloudflare Tuneel,或是用 內網穿透軟體

3. FreshRSS訂閱RSS
#

你只要點選左上角新增訂閱源,輸入RSS網址完成訂閱。在這裡你可給不同的網站分類,例如我會分成「新聞專欄」與「部落格」

FreshRSS預設會以新訂閱的RSS來排序文章(而非RSS Feed所提供的時間),所以版面會被新加入的網站佔滿,請按「全部已讀」,才能讀取其他網站的文章。

建議已經有一批RSS訂閱列表的人,一開始就完成全部訂閱動作。在訂閱後等個幾天,你的FreshRSS版面應該就會依照不同網站的文章的時間排序了。

4. 一些FreshRSS的小問題
#

如果該網站明明有RSS Feed但是FresshRSS無法抓取,出現Unknown error for feed,那麼可能是被Cloudflare擋住了,這個用 flaresolverr擴充功能繞過。

有些網站沒有提供RSS Feed,得用 RSS Bridge設定規則,爬取HTML或CSS網頁元素製成RSS Feed,再傳給FreeRSS訂閱。

5. 將FreshRSS與Fluent Reader連線
#

Fluent Reader是一款跨平台的RSS閱讀器,你不用在Fluent Reader加入RSS訂閱,只要讓Fluent Reader去連FreshRSS的伺服器,從那裡爬取資訊就行了。

  1. 進入FreshRSS後台,設定API管理,設定密碼,再點一下下方網址

  2. 複製顯示的Fever API端點網址

  3. 於Fluent Reader的服務貼上網址即可。

6. Ivon的RSS訂閱源
#

目前Ivon訂閱RSS主要是追蹤一些小眾主題的部落格,還有專門主題網站的更新,所以我不太訂大雜燴的新聞網站RSS,起碼不會是只會寫殺人標題的下流媒體。

部份舉隅:

如果你要訂閱本站「Ivon的部落格」的RSS,請戳網站底部的超連結查詢。

相關文章

Invidious用法:Youtube去廣告、網頁下載影片的開源前端網站
分類   Linux系統 Self-hosting自架
標籤   Invidious Youtube
Tailscale設定Subnet Routers,從跳板機存取區網的裝置
分類   Linux系統 Self-hosting自架
標籤   Tailscale
用樹莓派自幹Chromecast替代品,手機投放到大螢幕
分類   Linux系統 Self-hosting自架
標籤   Media Server Chromecast Raspberry Pi

留言板

此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。要討論程式碼請用Giscus,匿名討論請用Disqus。

這是Giscus留言板,需要Github帳號才能留言。支援markdown語法,若要上傳圖片請貼Imgur或Postimages。您的留言會在Github Discussions向所有人公開。

這是Disqus留言板,您可能會看到Disqus強制投放的廣告。為防止垃圾內容,有時留言可能會被系統判定需審核,導致延遲顯示,請見諒。若要上傳圖片請善用圖床網站。