Make Discourse play nice with the Wayback Machine

回放功能目前存在故障,JavaScript 能够运行,但由于路径名变更,Ember 路由器会出错。

感谢 @david 改进了浏览器检测功能,有一个极其丑陋但颇具诱惑力的修复方案,可以让新的捕获内容正常渲染:只需修补 browser-detect,使其识别回放并移除 noscript 版本。

问题在于,如果我们开始提供该脚本,并且奇迹般地 JavaScript 能够运行,那么所有旧的归档页面都会被强制切换到无 JS 视图。

现在写出来我才意识到,为了今天就能实现正常工作的归档回放,付出这样的代价可能也不算太糟。(草稿 PR 不过,我已经被人劝退,决定不实际执行这个方案了。

3 个赞

(是 @dan,不是我)

我们现有的 Wayback Machine 绕过功能是否失效了?

3 个赞

我们是否有特定原因不检查他们的用户代理(archive.org_bot)?这似乎是一个更稳健的解决方案。

1 个赞

他们的“liveweb”功能似乎没有发送用户代理:

4 个赞

我认为有些内容发生了变化(见日期)。我觉得我们应该同时检查这两项。

编辑:已为此提交了一个 PR:

10 个赞

很希望能看到这个问题再次得到解决。我正在 推广 Discourse 作为 Solid 项目 的中心枢纽,尤其是针对负责 Solid 标准化的核心团队成员和专家,但这个问题是他们不愿意这样做的 重要原因

1 个赞

PR 已合并,应该可以正常工作了。

4 个赞

刚刚通过执行“保存外部链接”在 /top/yearly 页面上确认了,目前功能完全正常。

6 个赞