使用 Tiny Tiny RSS 來保護你閱讀新聞饋送時的隱私。
Tiny Tiny RSS(TT-RSS)是一個自由開源的基於 Web 的新聞饋送(RSS/Atom)閱讀器和聚合工具。它非常適合那些注重隱私,並且仍然依賴 RSS 來獲取日常新聞的人。TT-RSS 是自行托管的軟體,因此你可以 100% 的掌控你的伺服器、資料以及你的全部隱私。它還支援大量的外掛、擴充套件和主題。你喜歡黑暗模式的介面?沒問題。想基於關鍵詞過濾發來的訊息?TT-RSS 也能讓你得償所願。
現在你知道 TT-RSS 是什麼了,那麼為什麼你可能會想用它。我會講述要把它安裝到樹莓派或 Debian 10 伺服器上你需要了解的所有的東西。
要把 TT-RSS 安裝到樹莓派上,你還需要安裝和設定最新版本的 PHP(本文撰寫時 PHP 最新版本是 7.3)、後端資料庫 PostgreSQL、Nginx web 伺服器、Git,最後才是 TT-RSS。
安裝 PHP 7 是整個過程中最複雜的部分。幸運的是,它並不像看起來那樣困難。從安裝下面的支援包開始:
$ sudo apt install -y ca-certificates apt-transport-https
現在,新增儲存庫 PGP 金鑰:
$ wget -q https://packages.sury.org/php/apt.gpg -O- | sudo apt-key add -
下一步,把 PHP 庫新增到你的 apt 源:
$ echo "deb https://packages.sury.org/php/ buster main" | sudo tee /etc/apt/sources.list.d/php.list
然後更新你的儲存庫索引:
$ sudo apt update
最後,安裝 PHP 7.3(或最新版本)和一些通用元件:
$ sudo apt install -y php7.3 php7.3-cli php7.3-fpm php7.3-opcache php7.3-curl php7.3-mbstring php7.3-pgsql php7.3-zip php7.3-xml php7.3-gd php7.3-intl
上面的命令預設你使用的後端資料庫是 PostgreSQL,會安裝 php7.3-pgsql
。如果你想用 MySQL 或 MariaDB,你可以把命令引數改為 php7.3-mysql
。
下一步,確認 PHP 已安裝並在你的樹莓派上執行著:
$ php -v
現在是時候安裝和設定 Web 伺服器了。
可以用下面的命令安裝 Nginx:
$ sudo apt install -y nginx
修改預設的 Nginx 虛擬主機設定,這樣 Web 伺服器才能識別 PHP 檔案以及知道如何處理它們。
$ sudo nano /etc/nginx/sites-available/default
你可以安全地刪除原檔案中的所有內容,用下面的內容替換:
server { listen 80 default_server; listen [::]:80 default_server; root /var/www/html; index index.html index.htm index.php; server_name _; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.3-fpm.sock; }}
按 Ctrl+O
儲存修改後的組態檔,然後按 Ctrl+X
退出 Nano。你可以用下面的命令測試你的新組態檔:
$ nginx -t
如果沒有報錯,重新啟動 Nginx 服務:
$ systemctl restart nginx
接下來是安裝資料庫伺服器。在樹莓派上安裝 PostgreSQL 超級簡單:
$ sudo apt install -y postgresql postgresql-client postgis
輸入下面的命令看一下資料庫伺服器安裝是否成功:
$ psql --version
在做其他事之前,你需要建立一個數資料庫,用來給 TT-RSS 軟體儲存資料。首先,登入 PostgreSQL 伺服器:
sudo -u postgres psql
下一步,新建一個使用者,設定密碼:
CREATE USER username WITH PASSWORD 'your_password' VALID UNTIL 'infinity';
然後建立一個給 TT-RSS 用的資料庫:
CREATE DATABASE tinyrss;
最後,給新建的使用者賦最高許可權:
GRANT ALL PRIVILEGES ON DATABASE tinyrss to user_name;
這是安裝資料庫的步驟。你可以輸入 \q
來退出 psql
程式。
安裝 TT-RSS 需要用 Git,所以輸入下面的命令安裝 Git:
$ sudo apt install git -y
現在,進入到 Nginx 伺服器的根目錄:
$ cd /var/www/html
下載 TT-RSS 最新原始碼:
$ git clone https://git.tt-rss.org/fox/tt-rss.git tt-rss
注意,這一步會建立一個 tt-rss
資料夾。
現在是安裝和設定你的新 TT-RSS 伺服器的最後時刻了。首先,確認下你在瀏覽器中能開啟 http://your.site/tt-rss/install/index.php
。如果瀏覽器顯示 403 Forbidden
,那麼就證明 /var/www/html
資料夾的許可權沒有設定正確。下面的命令通常能解決這個問題:
$ chmod 755 /var/www/html/ -v
如果一切正常,你會看到 TT-RSS 安裝頁面,它會讓你輸入一些資料的資訊。你只需要輸入前面你建立的資料庫使用者名稱和密碼;資料庫名;主機名填 localhost
;埠填 5432
。
點選“Test Configuration”。如果一切正常,你會看到一個標記著“Initialize Database”的紅色按鈕。點選它來開始安裝。結束後,你會看到一個組態檔,你可以把它複製到 TT-RSS 的目錄,另存為 config.php
。
安裝過程結束後,瀏覽器輸入 http://yoursite/tt-rss/
開啟 TT-RSS,使用預設的憑證登入(使用者名稱:admin
,密碼:password
)。登入後系統會提示你修改密碼。我強烈建議你盡快修改密碼。
如果一切正常,你現在就可以開始使用 TT-RSS 了。建議你新建一個非管理員使用者,使用新使用者名稱登入,並開始匯入你的饋送、訂閱,按照你的意願來設定它。
最後,並且是超級重要的事,不要忘了閱讀 TT-RSS 維基上的 Updating Feeds 部分。它講述了如何建立一個簡單的 systemd 服務來更新饋送。如果你跳過了這一步,你的 RSS 饋送就不會自動更新。
呵!工作量不小,但是你做完了!你現在有自己的 RSS 聚合伺服器了。想了解 TT-RSS 更多的知識?我推薦你去看官方的 FAQ、支援論壇,和詳細的安裝筆記。如果你有任何問題,盡情地在下面評論吧。