宝塔

用Tiny Tiny RSS搭建属于自己的rss阅读器

写在前面

曾经盛极一时的Rss技术,已经很少有人用到了。它逐渐演化成了一个极客、小众的技术。然而,直到现在,老派还固执的认为,Rss的易用性和开放精神比当前那些自我封闭,整天想着拉用户、涨流量的XX号、XX平台要强太多了。

从这一点上来讲,我并不觉得互联网这些年有了多大的进步,开放性这个东西早已被大家抛之脑后。不开放的互联网只是资本的游乐场而已,根本没有表面那么繁荣。这一点从近年来最火爆的编程语言来看也是成立的,最受欢迎的语言排行逐渐被开源社区强大的Python、JS等新兴语言所占据。自我封闭并不是互联网的未来。

当然,rss这个东西的消亡也有其原因,那就是替代品太多,互联网平台化发展使得大家获取信息的渠道逐渐单一化。可对于有特殊需求的人来说,rss还是有不可替代的作用。例如,老派我就是信息流的洁癖患者,我非常不喜欢公众号、微博、朋友圈的氛围和那些恶心app的垃圾推送。我想看的东西,不是你们说给就给的!

什么是TinyTinyRSS?

用官网上的话说:

Tiny Tiny RSS is a free and open source web-based news feed (RSS/Atom) reader and aggregator

它是一个开源的新闻阅读器(RSS/ATOM)和聚合器。

其功能类似于之前已经关闭了的Google Reader服务,国内的鲜果等rss订阅服务。 Google reader已经阵亡,国内的rss服务现状也惨不忍睹。圈内比较流行的是国外的inoreader服务,奈何免费版限制太多,专业版每年几十$的费用也不是谁都愿意出的。

对于熟悉web开源程序,或者喜欢建站的朋友们,与其花费大量的金钱购买服务,还不如自己搭建一个平台来的划算。对于有自己服务器的朋友,还能够借此充分利用服务器资源,避免浪费。

准备工作

有一台自己的服务器,aliyun、腾讯云或者什么其他的什么云,或者国外的什么vps都可以;到官网上下载tt-rss安装包

然后,深吸一口气,准备遇到各种坑……

步骤

  1. 在宝塔面板里新建一个网站;同时自动新建一个数据库和ftp账号;记录号这些账号密码。
  2. 绑定一个域名,或者二级域名也可以。
  3. ftp连接网站空间,上传解压tt-rss文件。
  4. 直接访问域名,自动跳转/install访问页面。
  5. 填写页面所要求的信息,包括数据库用户名、密码等等。
  6. 安装完成,登录界面,新建订阅源,或者导入opml文件。

好了,休息一下!是不是感觉已经大功告成了? Too Young !

不出意外的话,这时候你试一下,会发现

根!本!用!不!了!

这就是tt-rss不太方便的地方,如果不进行设置,tt-rss是默认不自动更新的。按照官网的说法:

You will also need to decide on the method tt-rss uses to update feeds. This is a separate topic, outlined in UpdatingFeeds.

好的,很多好学的同学都会点开那个链接,然后一脸蒙圈。弄啥嘞这是!

好吧,简单解释一下就是,你需要通过服务器的命令行添加一个守护进程,来定时运行tt-rss的自动更新程序。啥是守护进程?管他呢,想试一下的朋友可以尝试一下在非root用户下执行crontab -e命令,然后在打开的配置文件中加入类似这样的代码:

*/30 * * * * /usr/bin/php /path/to/tt-rss/update.php --feeds --quiet

里面的时间、php命令目录、update文件目录都要自己确定。而且最崩溃的是,这个过程要用到vim编辑器,反正我是不想学也不想用。

其实,如果用宝塔面板,就不用这么麻烦。宝塔面板自带定时执行任务的功能:计划任务。只要在宝塔面板里新建计划任务,然后shell代码里输入类似如下代码就可以:

su -m www -c "/usr/bin/php /www/wwwroot/fxrss.fxpai.com/update.php --feeds"

代码中的www你要替换成自己的服务器账户名称,注意,不能是root账户。后面引号中的代码分别替换为你自己服务器php目录和tt-rss update.php文件目录。这样设置以后,你的rss阅读器就可以按时自动更新了。

如果这个办法你也实在是搞不定,还有个更简单的办法,就是更改config.php文件中的SIMPLE_UPDATE_MODE常量为true,当你打开浏览器的时候,所有rss源就会自动更新,稍等一会儿就可以了。

需要注意的问题

一定要把config.php中的ENABLE_GZIP_OUTPUT常量改为true,改了这个以后,读取速度有肉眼可见的提升,非常明显。对服务器的消耗可以忽略,反正我的aliyun乞丐版没有什么负载增加。

另外,经过我的测试,不能够通过直接开启宝塔ssl证书的方法来开启全站https。会不停报错,自动更新功能也无法实现
是我域名设置的问题,不是tt-rss的问题。域名设置好就没问题了。可以正常使用全站https。

在为rss站点设置二级域名的时候,碰到了一点问题,不过这个和tt-rss没有什么关系。宝塔的二级域名绑定有点让我迷糊,如果有其他朋友遇到类似的问题,欢迎讨论。

拓展

tt-rss另一个吸引人的地方就是官方的Android应用(没有ISO系统的),可以从GooglePlay市场获得,专业版需要花3.9$买个unlocker。从网页后台打开偏好设置>>允许外部客户端通过 API 来访问该账户,打钩。手机端app输入用户名密码即可连接。使用起来速度很快。总体感觉不错。

除此之外,tt-rss有不少插件和theme,使用方法也都很简单,再次不再赘述。

实在没时间截图。不好意思。

以上。

阿里云+宝塔+WordPress避坑记录

写在前面

随着云服务器的价格越来越亲民,越来越多的博客爱好者希望通过架设自己的服务器,以便拥有更加自由的操作空间和更加灵活地主机配置。但是,购入了一台云服务器就相当于自己架设了一台网络主机,涉及到关于主机系统的安装和维护,这些工作对小白用户非常的不友好,甚至对专业用户来说,也是非常浪费时间和精力的。如果只是想架设一个Wordpress博客或者其他网站,安装一个主机面板是一个非常好的选择。

首先,说说我的主机,作为业余爱好者,主机稳定、便宜为最好,阿里云时常便宜到啥程度呢?我感觉每年主机花费在千元左右都是可以接受的,这还是虚拟主机的情况下,几百块的虚拟主机我学生时代也用过,连存储空间都不够。现在的阿里云ECS有时候几百块一年,甚至便宜到一、二百一年,这简直是做慈善啊。

当然,国际版正常情况下好像没这么便宜,国内线路主机需要域名备案。代价是抽出一点时间来配合阿里云的流程,好处是国内主机速度要好很多。

准备工作

一台云服务器,下载宝塔面板(免费的),WordPress主程序(或者你需要迁移的文件和数据),一点耐心。

第一步 配置云主机

云主机配置不写了,都是简单操作。

这里说一下aliyun的营销问题,刚购买完相关产品,营销电话救过来了,还冒充技术人员,我交流了两句,发现技术一窍不通,然后拼命让我买其他产品什么的。

千万别信这个,他们根本就不了解你的需求,配置还是量力而为

我除了ECS最低配的主机之外,仅激活了弹性公网IP,而且是后付费的,用多少交多少,一般个人博客的流量远用不着包年或包月(大牛博客例外)。

第二步 安装宝塔

根据宝塔面板官方的安装说明操作即可。

注意:

  1. 关于主机的最低要求,官方最新版6.X的要求,内存512m以上,经我亲测,主机内存至少1G以上。否则就算安装面板没有出现问题,后续安装pHp7.0以上版本时,也会报错,安装进程直接被kill了。
  2. aliyun安装完成宝塔面板后,第一件事就是该云主机安全策略。这里的安全策略说白了就是端口配置,把宝塔需要开通的端口都开通就行了。ssh,ftp,phpmyadmin这些都有特殊的端口,宝塔面板自身也有8888端口需要使用。我配置成功后基本端口如图1:
  3. 安装宝塔完成后的所有用户名和密码,都要保存好,自动生成的登录地址和用户名密码都很复杂,肯定记不住。
图1:阿里云ECS宝塔面板端口配置图

第三步 配置宝塔运行环境,安装拓展

第一次打开宝塔会提示安装一键包,有LNMP和LAMP两种选择,个人习惯apache,选择后者。

安装完毕后可以安装不同版本的php、Mysql,还需要独立安装ftp服务方便上传文件,其他的拓展视情况安装。

注意:

  1. php7.0以上版本我安装的时候出现了杀进程的状态,因为主机的内存太低了,512m肯定不够用,升级1G内存就正常了。
  2. 建议先在程序管理里面先卸载Memcached服务,如果不在这里先先卸载,在php扩展管理里面安装Memcache会报错。这个应该是bug。

第四步 安装/迁移Wordpress

新安装WP实在没啥可说的,已经傻瓜化了。

迁移就涉及到比较多的问题,我主要遇到的问题是数据库导入的事情,我原来的数据库是UTF8mb4格式的,导入的时候没有注意,选择了UTF8格式,结果文章内容全都导入失败,这一点千万注意。关于两种格式的区别和关系请自行百度。

此外,宝塔也自带了SSl功能,一件启用很好用。建议开启宝塔自带的图片防盗链功能,节省流量。

第五步 WordPress加速问题

根据大牛们的测试,wp开启Memcached+Batcache加速功能会极大的提高运行速度,降低主机负载。这个过程中涉及到安装Memcached拓展的问题,这里再一次重点提示一下,宝塔面板里需要先卸载程序里面的Memcached扩展,然后再进入php的扩展模块进行安装才能够安装成功。

我利用我爱水煮鱼大神的wpjam-basic插件开启了Memcached功能,然后,又安装了wp-super-cache插件。后者似乎自带了Batcache功能。两者配合使用,使网站确实加速了不少。

这里有个坑要注意:如果同时在宝塔里安装了两个WP站点,即两个域名指向同一个弹性公网IP的情况下,两个网站的数据库前缀名不能够相同,例如:默认安装两个站点数据库前缀都是“wp_”,这种情况下启用Memcached相关服务会产生问题,可以改为自己喜欢的例如“wpfxp_”或其他。

此外,我还顺便对我的主题上的图片使用了lazyload技术,配合Masonry布局和ajax加载,使网站整体上感觉很操作比较流畅。有时间也想写篇文章讲一下Lazyload+masonry+ajax这三个功能的整合问题。

写在最后

这篇文章简单记录了我在整个过程中遇到的坑,其实都不是什么大问题,更详细的安装教程网络上一搜一大片,我就不复制粘贴了,没啥意思。只给要入手的同学提供一个壁坑记录,仅供参考。


宝塔一键全能管理服务器,1分钱体验525.6元的插件,还有专业版奖励,立即一起来组队https://www.bt.cn/team.html?MTI0NjYweno=