本文最后更新于 2025-01-12T20:01:55+08:00
笔者按照教程和文档 ,在 VPS 上部署了 Awesome Tiny Tiny RSS (以下简称 TTRSS)。在这个过程中,踩了很多坑,在此记录下来。
环境
Ubuntu 20.04 LTS
宝塔面板
LNMP (用面板安装)
Docker (另行安装)
用管理员身份执行
安装 docker、部署 TTRSS、用 docker-compose
命令操作 TTRSS 时,每条命令都需要用管理员身份执行。
Postgres 数据库的密码
在 docker-compose.yml
文件中,POSTGRES_PASSWORD
和 DB_PASS
这两项,需要在部署 TTRSS 之前就设置好。
如果部署 TTRSS 之后再修改这两个密码,那么在访问 TTRSS 的 URL时,会得到一个空白页面(白屏)。
我不会重置密码,只能用 sudo rm -rf /root/postgres/data
命令强行删除全部的 Postgres 数据库 🤷♀️。
SSH 连接到 VPS,执行:
1 curl http://127.0.0.1:181/
如果 curl
返回如下内容:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 <!DOCTYPE html > <html > <head > <title > Startup failed</title > <meta http-equiv ="Content-Type" content ="text/html; charset=utf-8" > <link rel ="stylesheet" type ="text/css" href ="themes/light.css" > </head > <body class ="sanity_failed flat ttrss_utility" > <div class ="content" > <h1 > Startup failed</h1 > <p > Please fix errors indicated by the following messages:</p > <div class ="alert alert-danger" > Please set SELF_URL_PATH to the correct value detected for your server: <b > http://127.0.0.1:181</b > (you're using: <b > https://ttrss.kukmoon.com</b > )</div > <p > You might want to check tt-rss <a target ="_blank" href ="https://tt-rss.org/wiki.php" > wiki</a > or the <a target ="_blank" href ="https://community.tt-rss.org/" > forums</a > for more information. Please search the forums before creating new topic for your question.</p > </div > </body > </html >
说明 TTRSS 已在后台运行,需要正确地配置反向代理。
配置 HTTPS 与反向代理
新建一个站点配置文件:
1 sudo nano /etc/ nginx/sites-available/ ttrss.kukmoon.com.conf
粘贴以下内容:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 server { listen 80 ; server_name ttrss.kukmoon.com; gzip on ; listen 443 ssl http2; if ($ssl_protocol = "" ) { return 301 https://$host $request_uri ; } ssl_certificate /var/www/kukmoon.com/cert/cert.pem; ssl_certificate_key /var/www/kukmoon.com/cert/privkey.pem; ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3 ; ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5; ssl_prefer_server_ciphers on ; ssl_session_cache shared:SSL:10m ; ssl_session_timeout 10m ; add_header Strict-Transport-Security "max-age=31536000" ; location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md) { return 404 ; } location / { proxy_pass http://127.0.0.1:181/; rewrite ^/(.*)$ /$1 break ; proxy_redirect off ; proxy_set_header Host $host ; proxy_set_header X-Real-IP $remote_addr ; proxy_set_header X-Forwarded-Ssl on ; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for ; proxy_set_header X-Forwarded-Proto $scheme ; proxy_set_header X-Frame-Options SAMEORIGIN; proxy_set_header Upgrade-Insecure-Requests 1 ; client_max_body_size 100m ; client_body_buffer_size 128k ; proxy_buffer_size 4k ; proxy_buffers 4 32k ; proxy_busy_buffers_size 64k ; proxy_temp_file_write_size 64k ; } }
使配置文件生效:
1 2 3 cd /etc/nginx/sites-enabled sudo ln -s /etc/nginx/sites-available/ttrss.kukmoon.com.conf ttrss.kukmoon.com sudo nginx -s reload
笔者找到了TTRSS 的第三方 iOS 客户端:tiny Reader 。它是免费的(有内购),有 macOS 与 iOS 版(其实 macOS 版没必要,用浏览器就好了)。注意,它是通过 TTRSS 本身的 API 来连接的,不是通过 Fever API!
App store 链接:https://apps.apple.com/us/app/tiny-reader-rss/id689519762
手机端登录方法
首先,在 TTRSS 的【偏好设置】→【偏好设置】→【通用】中勾选【启用 API:允许外部客户端通过 API 来访问该账户】。
然后,在手机端启动 tiny Reader,它首次启动后会自动进入 Account 设置界面,将 SERVER ADDRESS 设置为 TTRSS 的 URL,LOGIN 设置为你设置的账号名(我在默认账号 admin 之外又建立了一个新的账号),PASSWORD 设置为你为账号设置的密码。这样就可以了。
图片版权
题图:自制(其中 Tiny Tiny RSS 的图标版权归开发者所有)
头图:https://www.wallpaperbetter.com/en/hd-wallpaper-tolen
参考文献