Docker上的讨论 - 备份链接404

大家好,

问题:
生成备份后,通过电子邮件收到下载链接,但被重定向到 404 页面。
几分钟后,如果我使用相同的链接,我会收到“抱歉,此备份下载链接已被使用或已过期。”

重现步骤

  1. 安装 Discourse for Docker
./discourse-setup
  1. 转到“管理”面板,“备份”选项卡并创建备份。(备份保存在“本地存储”中)

  2. 新生成的备份将出现在列表中

  3. 点击“下载”,您将收到“备份下载链接已通过电子邮件发送给您。”

  4. 您将收到类似以下的电子邮件:

“这是您请求的站点备份下载(https://discourse.XXX.com/admin/backups/XXX-2023-03-15-145648-v20230308042434..tar.gz?token=)。”

  1. 点击链接后,我遇到一个空白页面,显示 404。
    如果我右键单击保存链接,它将下载一个损坏的 zip 文件。

Nginx 日志:

[15/Mar/2023:15:22:15 +0000] "discourse.XXX.com" <myIpAddress> "GET /admin/backups/XXX-2023-03-15-145648-v20230308042434..tar.gz?token=<myToken> HTTP/2.0" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/110.0" "backups/show" 404 822 "-" 0.820 0.821 "Isso" "-" "-" "-" "-" "-" "-"

error.log 中没有任何内容。

问题
备份文件夹路径是什么?
如何解决此问题?

/var/discourse/shared/standalone/backups/default

1 个赞

这很奇怪!第二个点是从哪里来的?我无法重现这个问题,也从未见过这种行为。所以,我无法解释。有没有可能你的邮件中的链接被什么东西篡改了?

4 个赞

抓得好!

我没有在 customizetext 中做任何更改。

这是我的默认邮件:

这是您请求的[网站备份下载](%{backup_file_path})。

出于安全原因,我们将此下载链接发送到您已验证的电子邮件地址。

(如果您*未*请求此下载,您应该非常担心——有人可以管理员身份访问您的网站。)

我昨天从这个Git仓库安装了 Discourse,并遵循了这篇指南

我明天会再仔细看看。

至少我现在可以下载备份了 :slight_smile:

我以前在一个朋友的实例上见过这个问题,但从未弄清楚根本原因。它持续了一个月左右,然后在一个 CLI 重建容器后停止了。

2 个赞

Gerhard:

谨此告知,我需要更新我的子域,因此我重建了容器(按 Claudia 的建议),解决了邮件中双点的问题。

2 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.