前几天我在动态里说过,我的github项目中无意中泄漏了数据库密码,随即修改了密码。
但是偶然发现,时光机里面无法上传图片了,后台也是无法上传图片。
猜测是某些缓存数据(我觉得可能是由数据库密码计算出来的cookie)存放在某个目录下,或是存放在数据库中。上传图片时可能该值有关。更改数据库密码后,该值未更换成新的,导致上传失败。
做好备份工作后,我重新安装了一遍typecho,同时导入handsome主题皮肤,唯一保留的是原有的数据库文件。
然后发现上传文件仍然失败,所以可以推断这种缓存在数据库中。
typecho博客的数据库设计的很简洁,根据以前写typecho博客管理姬的经验,我推测这个可能存在的缓存值应该存在于typecho_options这个表中。
由于操作系统考试临近,所以我先将其放在一遍,今天考完试后,我进行了如下操作:
- 导出当前的数据库文件
- 新建一个typecho博客 ,导出其数据库文件
- 通过文本编辑器,复制第二步得到的数据库文件中的typecho_options这个表全部内容,粘贴到第一步得到的数据库文件中的typecho_options的位置(将原有typecho_options部分的数据覆盖)
- 将新的数据库文件导入
测试发现此时可以正常上传图片。
然后需要做的就是将handsome的配置,网站的设置重新设定。
然后测试发现我写的typecho博客管理姬无法上传博文了,这是因为typecho_options的secret这一项的值改变了,改回原来的值即可。
就酱~