我正在 2GB 的 Digital Ocean 服务器上运行 Discourse 2.7.0.beta5。
所有主题和回复在发布到论坛前都需要审核/ moderation。
所有图片都上传到了 AWS S3。
当我在“审核”页面时,许多用户提交的图片无法显示(取而代之的是一片空白),直到我批准该帖子。或者,如果我在审核中编辑帖子并直接保存,即使未向公众批准该帖子,图片也会显示出来。
当我右键点击空白图片并在新标签页中打开时,URL 仅仅是论坛的地址。如果我在审核中编辑并保存帖子,图片显示出来后,其 URL 则是 S3 存储桶的地址。
这让我怀疑,审核队列中这些图片可能并未上传到 S3,这或许就是它们在帖子被批准前无法显示的原因?
我是否遗漏了什么?有什么解决这个问题的建议吗?
以下是空白图片的截图:
以下是我编辑并保存该帖子后显示的同一张图片:
1 个赞
Roman
(Roman Rizzi)
3
文件应上传至 S3,并在数据库中创建相应的记录。问题一定出在其他地方。
浏览器控制台中是否有错误?如果查看浏览器的网络选项卡,这些图片是否返回了 200 状态码?
1 个赞
嗯,控制台没有报错,而且在网络选项卡中也没有显示图片。在我编辑并保存帖子后,图片才会出现在网络选项卡中。如果刷新页面,图片又会消失,并且不再显示在网络选项卡中。
Roman
(Roman Rizzi)
5
我在本地尝试复现此问题,但未成功。如果上传缺失,将显示占位符图像。
检查 HTML 时,<img> 元素是否存在?
感谢您的协助。
<img> 元素已存在,但图片 URL 并未指向 S3。
以下是我目前在控制台中看到的一些错误,但我不确定它们是否与这个问题有关。
1 个赞
simon
9
感谢您报告此问题!我们收到了另一份关于此问题的报告,并且已经能够重现它。我发现的是,如果审核队列中有多个需要批准的帖子包含图片,则只会显示审核队列中最顶部项目的图片。我们正在努力修复此问题。
1 个赞