Home 评论系统改造
Post
Cancel

评论系统改造

今年才知道disqus原来也被墙了,所以国内的朋友访问这里是看不到评论区的。(不过想想也是,能说话的地方一般都是要被墙的。)这两天在白热老兄的博客上发现了有可以自己托管的评论系统(commento,不过据白热老兄说进程经常挂),于是就Google了一波最终决定先试试isso

在windows上搞isso有些水土不服,外加昨天虚拟机装了好几次莫名失败,于是就在装虚拟机失败的时间里尝试了某个isso的docker image,发现配置起来还算简单,写个config,初始化一个sqlite的db文件就可以开搞了。最终配置文件大概是这样:ssdh233/comments.ssdh233.me

搞好之后找地方托管,先试了下阿里云结果发现要备案,之后发现AWS好像不一定会被墙,就决定先放到AWS上试试了。因为那个docker image默认是8080端口,就顺便用了nginx来reverse proxy一下。之后可能会在AWS上放点别的东西,毕竟一个AWS EC2的实例光用来放一个没大有人用的评论系统也是有点太亏了= =

目前还有很多问题没有解决,列个表监督下:

  • 数据方面
    • Disqus -> isso的数据转移,目前只是把评论内容转移了,时间还没有校对。估计是要直接写SQL来搞了。。
    • 数据库的备份。打算写个github action,用sqlite dump一下每周传到S3上。最近发现S3挺便宜的
  • Server方面
    • HTTPS还没有搞,所以目前访问https://ssdh233.me是看不到评论的。。最佳解决方案应该就是Lets Encrypt了。
    • 需要观测一阵儿看看进程稳不稳定
    • 需要观测一阵儿看看会不会被墙(这个是重点)
  • Client方面
    • i18n的功能似乎没有放到配置文件里来,不过不是大问题,大家都懂English :D 要解决的话得改下代码重新build docker image了。最近也在考虑分类一下中文/日语写的文章,到时候一起搞。
    • 不知道isso有没有提供通知功能。 发现可以设置一个SMTP server来发通知,这几天搞一搞试试正好学习一下。
    • isso的风格跟目前本博客还是不太一致。不知道能不能自定义css,应该是能的。最近也有换个jekyll主题的打算,到时候一起搞。
    • 没有提供表情和图片上传功能,暂时只能麻烦各位[手动枯花][手动捂脸哭]了。

说起来前几天发现bilibili也要绑定国内手机号才能登陆了,在下在国内的手机号早已经欠费N年被注销了,目前申诉也没有新的手机号可以用,只能等明年回国先办个手机号再说了,能说话的地方真的是越来越少了。。

12.06 7点更新: 换了个主题后发现被自动跳转到https, 所以isso的评论暂时用不了了,悲剧!得赶紧搞https了!

12.06 19点更新: HTTPS已经配置完成!评论也全部恢复完毕!不仅如此,还偶然发现了lain老兄的两条遗失的评论!(原因还是因为在下对disqus管理不熟悉,需要去管理面板去承认掉匿名评论才能显示)目前数据库每天会备份两次,restore也已经测试好了。应该是万无一失了!现在唯一怕的就是评论用服务器被墙。。接下来该好好研究下isso的功能了。

遗失评论1: https://ssdh233.me/blog/2021/07/05/divaft.html#isso-thread

遗失评论2: https://ssdh233.me/blog/2021/07/11/divaftdx.html#isso-thread

12.08 最终更新:

评论通知系统已经设置完毕!SMTP服务器是用的Amazon SES,设置起来不算太麻烦。不过isso客户端这边年久失修,本来是有一些bug,不过还好可以用js改掉。现在默认所有回复都可以收到邮件通知了!如果不想收到通知,可以选择不填邮箱,或者手动取消掉收通知的选项。

干!发现通知系统有个bug,有邮箱的回复没有邮箱的用户会502,但是评论还是能发出去,bug改起来不难但是目前用的docker image是直接用pip安装的isso的包,而不是从源文件build的,所以要自己重建一个docker image,或者直接去github发PR才能改了,略蛋疼。。。总之先暂停了通知系统,感觉不是很重要,就先放着了🥀🥀🥀

12.10 最最终更新:

才发现🌹和🥀已经被加入到了unicode,成为了世界标准!于是赶紧用js加了几个按键来辅助输入。下面简单介绍一下目前评论区列出来的表情:

  • 🌹🥀:人类交流必备表情。
  • 🌷🌺:人类交流必备表情的派生版,对上面两个产生疲劳的时候可能会需要。
  • 💥🔥💣:用来表达对日本游戏公司的喜爱。
  • 🦍:在座的各位!
  • 💧:あさき的名曲。顺便平衡一下本博的五行,要不火药味太浓了。。
  • †:方便输入o†o和perditus†paradisus。
This post is licensed under CC BY 4.0 by the author.

ポップン奮闘記 其の陸

家用机音游战报 vol.0