Lareina Update 1

Lareina Update 1

放在生产环境中,才会发现还有哪些问题。短短一天,就新增(修复)了这么多东西。。。

Updates

  • 优化首页卡片显示效果
  • 新增首页轮播图,显示置顶文章 仿照Velas在新标签页中打开
  • 修改了评论发表频率(原来是40秒3次评论,现在改成20秒1次)及交互逻辑
  • 支持发表草稿文章(即保存草稿)
  • 新增Moments页面全局开关(可以选择是否对公众显示,当然管理员登陆后自己可以在moments页面查看发表的moments)
  • 文章页面结构化数据
  • 文章页面新增阅读进度显示,和返回顶部按钮融为一体
  • 文章现在有了评论数量统计(写在数据库,尽量减少重复的数据库查询),用在了首页卡片上
  • 前端数学公式现在采用katex后端渲染,又少了一个js,开心。效果没什么区别 -> $\alpha+\beta=\gamma$
  • 增加了一个文字隐藏,好玩。
  • 移除了对 MarkDown 上下标的支持,因为会和katex冲突,但影响不大,一样可以用html好水实现。
  • 新增网站地图(采用缓存,只有在发新文章和删除文章时更新)

Fixed

  • 文章页图片显示会从小跳到大的问题
  • 管理员回复评论也会收到通知邮件的问题
  • 评论中不能含有中文符号~()的问题
  • 评论不会自动分词导致溢出的问题
  • safari下采用Serif字体,评论列表切换器显示错位的问题
  • 黑色模式下,iPad iPhone 在滑动时出现白色背景的问题
  • links 页面在移动设备上显示不佳的问题
  • 文章链接图标判断错误的问题(例如可能将jdeal判断成jd.com)
  • category页面tags上下间距过近的问题

Security Related

看到Velas的博客遭遇的一些安全问题,所以有了以下的安全性更新

  • 登陆次数限制 防止暴力破解 (一个IP在XX分钟内只能尝试登陆两次)
  • API增加防镜像,如果发现是镜像调用,直接400报错,并邮件通知我
  • 增加了一部分API的访问频率限制
  • 后端增加博客信息缓存,便于判断一些和博客设置相关的访问。(例如Moments API)
  • 后端配置了错误追踪系统

To Do

  • 首页?page=2 (防止刷新回到首页/可以点击logo回到首页)
  • 没有sticky的处理(轮播图位置改为显示博客信息)
  • 上下篇同分类(关联性高一点)
  • 代码增加一些padding(太紧了啊)
  • 首页desc中需要文字两端对齐(为了美观)
  • 自动保存草稿(数据无价,防止误操作1.保存在浏览器端/保存在数据库/后台文章编辑增加快捷键)
  • 后端错误优化 强壮性(大坑,没有动力)
  • category 页面上下间距过近(应该简单)