我只会瞎折腾!暨兰空图床上传图片失败解决方法!


我给自己定义"瞎折腾"应该很多次了!每次折腾完一件事之后,才会把整个折腾的过程撸一撸思路,这才会发现绕了太多太多的弯路而浪费了太多太多的时间。讲一讲这次我又是怎么样瞎折腾兰空图床上传失败的吧!

应该是大前天,我写老张随笔里需要上传一张图片到图床,传了N次都不行,要知道之前上传都是正常的,换了其他的存储方式也上传不了!好了,下面就是我的"骚操作",开始了我的"瞎折腾"之路了!

瞎折腾之一:重置消息队列

兰空图床我是普通方式安装,在生成缩略图、图片处理以及发送邮件等等功能中,这些耗时任务都需要使用消息队列来执行,我们可以使用 php artisan queue:work 命令来运行消息队列。这块我是删了加、加了删,折腾了N次。

结果是可想而知的!图片上传还是失败!

瞎折腾之二:降级数据库

为了能跟上"潮流",我在3月20号的时候,把数据库mysql从5.7版本升到了8.0的,升级之后所有网站运行正常。期间在4月10号的时候还正常的上传过图片到图床。但是,自己的脑子还是跑气,还是把数据库给降级了。这次降级没有直接整体降级,而是给兰空图床单独配置了一个docker部署的Mysql5.7版。这次折腾docker部署的Mysql5.7版也是搞了半天的时间,Docker版的mysql部署好后,导入数据又是个问题了,又安装Navicat,远程到Docker版的mysql数据库,才把数据给恢复了!

结果是可想而知的!图片上传还是失败!

瞎折腾之三:删站重建

脑子跑气上头了!折腾起来不经大脑了!把数据库备份下,把网站、数据库重部删掉,下载网站源文件,从0开始安装,在用全新数据库的情况下再次测试图片上传,结果,结果,还是失败!把数据库恢复后再次测试,结果,结果还是失败。

瞎折腾之四:网站搬家

人如果脑子一根筋了,谁劝也没有用,何况还没有人劝呢!在我的甲骨文破西上也是从0开始安装了兰空图床,上传图片成功!把数据库恢复,上传图片成功!

最终折腾:回到起点!

虽然把网站搬到甲骨文后上传图片正常了,但是甲骨文破西只是本时瞎折腾东西用的,放网站速度还是慢的。那只能再回来起点!

这次折腾,真的是静下心来了,想着,之前上传图片是正常的,而某个时间上传不成功,而网站环境、配置什么的又都没有修改过,那问题出在哪里了?请出我的"小张",把网站日志交给小张分析,再把网站目录下的/storage/logs日志进行了分析,最终导致图片上传失败的原因找到了,想都不敢想!是服务器时间与标准时间不一致导致的上传失败!

日志分析得很清楚了,核心问题就是 服务器时间不对:
错误:RequestTimeTooSkewed

RequestTime: 20260421T084333Z (请求发起时间: 08:43:33 UTC)
ServerTime: 2026-04-21T08:26:19Z (服务器认为的时间: 08:26:19 UTC)
MaxAllowedSkew: 900000ms (15分钟)

两者相差约 17分钟,超过了 AWS S3 允许的 15 分钟偏差,所以 S3 拒绝了上传,返回 403 Forbidden。

解决方法:同步服务器时间
bash
查看当前服务器时间
date -u

同步 NTP 时间
timedatectl set-ntp true

或者手动安装 ntpdate 同步
ntpdate -b pool.ntp.org

同步完之后再上传就好了。

这个坑确实比较隐蔽——应用日志会报 403 Forbidden,但真正原因藏在 AWS 返回的 XML 错误信息里,提示 RequestTimeTooSkewed,指向时间偏差问题。

想不到是服务器时间与标准时间不一致,超过了S3的允许范围15分钟而导致拒绝上传!

总结:

唉,瞎折腾!瞎折腾!自己一直在瞎折腾!遇到问题不先理清思路,上去就是一通瞎折腾!结果是浪费了精力浪费了时间!就这件事而言,如果事前可以静下来,理理思路,根本就不会浪费这么多时间和精力!唉!以后遇事,还是得要先"想静静"吧!

 

 

 

评论区

共 33 条评论
  1. 头像
    广树 Lv5.熟稔有加
    像极了现在某些AI模型的做法(笑)
    1月前
    1. 头像
      老张 博主
      @广树 哈哈,
      1月前
  2. 头像
    川哥 Lv2.初识寒暄
    准备打算弄,算了。不折腾了。哈哈
    1月前
  3. 头像
    小饿 Lv6.推心置腹
    直接上claude code吧,省去这些折腾,让AI帮你解决。
    1月前
    1. 头像
      老张 博主
      @小饿 以后准备这样搞了。
      1月前
  4. 头像
    织梦岁月 Lv3.点头之交
    哈哈,真折腾。经验丰富。
    1月前
    1. 头像
      老张 博主
      @织梦岁月 是个教训。
      1月前
  5. 头像
    土木坛子 Lv2.初识寒暄
    我都不折腾了,直接用主机存储图片,反正也不多。
    1月前
    1. 头像
      老张 博主
      @土木坛子 其实我的图片也就是几百张,还不到200M。
      1月前
  6. 头像
    网友小宋 Lv9.惺惺相惜
    上次不知道动到哪里了,兰空批量上传全部失败,最后改成一张一张上传好了
    1月前
    1. 头像
      老张 博主
      @网友小宋 我现在改用授权版的了。
      1月前
  7. 头像
    acevs Lv5.熟稔有加
    问题不大,但是折腾获得经验很多。不错。
    1月前
    1. 头像
      老张 博主
      @acevs 以后可能还会“瞎折腾”
      1月前
  8. 头像
    老何 Lv4.常来常往
    我也一样,有时候为了一个小问题折腾几天,还乐此不疲。
    1月前
    1. 头像
      老张 博主
      @老何 有些时候也会折腾累。
      1月前
  9. 头像
    wp张 Lv1.萍水相逢
    下次直接问你的"小张",省的再被自己瞎折腾气到.工具的目的就是为了解放生产力.
    1月前
  10. 头像
    崔话记 Lv2.初识寒暄
    这不一定是无用的瞎折腾,就像为了结婚而谈的恋爱,直接结婚也不是不可以,恋爱还是谈一谈的好
    1月前
    1. 头像
      老张 博主
      @崔话记 哈哈,这个“恋爱”谈的太傲人了。
      1月前
😊