前几天想传点壁纸到 Halo 后台,发现图片上传失败。
我的图片是通过后台调用 API 传到阿里云 OSS 上的,因为阿里云那边有些莫名其妙的限制,所以开始以为是阿里云抽风了。登录阿里云控制台,单独往 OSS 上传了一张图片,发现没问题。
因为图片压缩过,小于 1M,所以也可以确定不是 nginx 文件大小限制的问题。
只好上 Halo 的论坛看看,相关问题比较少,没有找到解决方案。登录服务器看日志了,Halo 的日志还算好找,就在运行目录下,虽然看不明白具体日志含义,但可以看出有个 Java 类找不到了。
我之前图片上传的功能是可以正常使用的,也没有更新 Halo 的版本,基本确定不是缺少了什么文件。
重启 Halo 试了试,问题解决了。我是将 Halo 服务设置成了 enable 的,应该是 Halo 崩溃了自动重启,有些服务没启动成功,所以导致某些东西找不着。
想着经常会出现图片上传的问题,上一次是因为 nginx 文件大小的限制,1M 以上的图片传不上去,还有一次是图片格式,某种格式图片无法上传,问题源至今不清楚。为了以后排查问题方便,把 nginx 的大小限制改成了 2G,以后可能会传点视频什么的。