重烘焙旧帖子在重命名 S3 存储桶后不会拉取新的 S3 CDN URL

哦,好消息。在研究如何查找上传记录时,我发现了这篇帖子,它展示了如何将 base62 字符串转换为 sha1 哈希。

帖子中提到,那些只显示 transparent.png 的图片已被“tombstoned”(标记为废弃)。我不太确定这具体意味着什么,但我推测是某个进程在夜间运行,当时这些图片已损坏,于是将它们标记为未使用。我成功运行了以下命令:

rake uploads:recover_from_tombstone

看起来我所有嵌入的图片都已恢复,现在都指向我的 S3 CDN 了!

顺便提一下,以下是我如何从 yTDVQSa4wbIeLGEZvE7muXe8sAJ 这个字符串开始找到对应的 Upload 记录的:

[14] pry(main)> Base62.decode("yTDVQSa4wbIeLGEZvE7muXe8sAJ").to_s(16)
=> "f49428d6af35d7e0414408ccb65e7316f5003215"
[15] pry(main)> Upload.where( "original_filename ilike '%f49428d6af35d7e0414408ccb65e7316f5003215%'" )
=> [#<Upload:0x000056313aa91fe8
  id: 899,
  user_id: 549,
  original_filename: "f49428d6af35d7e0414408ccb65e7316f5003215.png",
  filesize: 25514,
  width: 1169,
  height: 984,
  url: "//ortus-discourse-uploads.s3.dualstack.us-west-2.amazonaws.com/original/1X/f49428d6af35d7e0414408ccb65e7316f5003215.png",
  created_at: Tue, 12 Jan 2021 23:01:35 UTC +00:00,
  updated_at: Tue, 12 Jan 2021 23:01:36 UTC +00:00,
  sha1: "f49428d6af35d7e0414408ccb65e7316f5003215",
  origin: nil,
  retain_hours: nil,
  extension: "png",
  thumbnail_width: 594,
  thumbnail_height: 500,
  etag: "6977f35ddbf39a4399dc76f92a5079d4",
  secure: false,
  access_control_post_id: nil,
  original_sha1: nil,
  animated: nil,
  verification_status: 1>]

再次感谢你的帮助,@Falco!我是 Discourse 的新手,但你表现得非常耐心且乐于助人 :+1: