用户收到一封电子邮件,其中包含以下内容:
我会将这封邮件整理为重复邮件。
访问主题 或回复此电子邮件进行回复。
但当用户点击链接时,系统完全不知道该显示哪个页面。
因此,当项目被标记为重复项时,系统应确保旧链接仍然重定向到适当的位置,而不是变成 404 等。
用户收到一封电子邮件,其中包含以下内容:
我会将这封邮件整理为重复邮件。
访问主题 或回复此电子邮件进行回复。
但当用户点击链接时,系统完全不知道该显示哪个页面。
因此,当项目被标记为重复项时,系统应确保旧链接仍然重定向到适当的位置,而不是变成 404 等。
我不确定一旦删除相关主题,它会指向哪里?404 错误不就表明该主题已被删除为重复项了吗?
有 301 到另一个。
这可以像合并时那样自动进行(是吗?),还是由工作人员选择,因为根据定义它是 404;这可以也应该被辩论。
我觉得在 Discourse 上做重定向太难了,但这可能只是我个人的问题。
在 WordPress 上,我有几个插件可以帮助我处理 404/410/301/302 问题。但 WordPress 在设计和用户数量上是一个完全不同的世界,所以也许比较是不公平的。
我不知道这是否可以用于“通过电子邮件回复”链接?
完整的帖子包含指向另一个主题的链接,之前的帖子也是如此,所以应该有一些上下文:
这还不够吗?
没关系。它从来都不重要,这就是为什么我们使用 301 重定向。这会破坏通过电子邮件使用的那个主题继续讨论的可能性吗?可能吧,我不知道——但点击那个链接应该会被重定向到论坛。
我们在说同一件事吗?在我看来,这里有两种不同的场景/情况:
我认为,如果有人通过电子邮件回复已关闭或已删除的主题,他们会收到一封电子邮件,说明他们的帖子未发布以及原因。
如果他们是通过链接访问已删除的主题,那么他们会收到一个 404 错误,表明该主题已不存在。
但在此示例中,他们不应该这样做。他们应该重定向到另一个主题——这就是我们首先使用 301 的原因。
当然,据我所知,我们可以做到,但这需要做太多的工作——或者只是我这么认为。
回复说该主题将被删除,因为它重复,这本身就是一条回复。
这里没有发生将主题链接/合并的特殊操作。
我只知道在 github.com、crbug.com、bugzilla 等网站上,按照旧链接,至少会看到:
#1234 已被标记为 #2345 的重复项,
这样用户仍然有东西可以点击,而不会把他丢在内华达沙漠的中间。
我的意思是,跟踪旧链接的人可能只是一个无辜的人,他并没有创建重复项。没必要惩罚无辜的旁观者。
这简直对业务不利。我无法想象有任何系统会丢弃跟踪信息,除了在阻止的情况下。
Github、Bugzilla 及其他问题跟踪器——以及 Stack Exchange——都具有将条目关闭为重复项的固有能力。也就是说,有一个被跟踪的 Duplicate 状态。
Discourse 允许版主通过_移动帖子_来_合并_主题,但据我所知,并没有实际的“关闭为重复项”功能来跟踪该状态。你看到的只是有人说“哦,这是重复的,所以我将删除它”。
这不是_系统_在丢弃信息。这是版主或管理员。
我可以看到一个“真正的”重复功能在很多情况下都很有用。但这会引发许多需要解决的设计问题。
除此之外,版主最好:
这样,在遵循链接时就不会出现神秘的 404 错误。
也许应该为版主提供更多方便的按钮(模板),以便他们能正确操作,而不是手动操作并造成死胡同。(我不知道。我从未当过版主。)
(如果他们尝试手动操作,应该弹出一个友好的警告,说:“试试这个吧。”)
不过要说清楚的是,您的主题摘要实际上归结为“已删除的主题会转到错误页面”,这并不是一个 Discourse 问题。合并和重定向的工具已经存在,您只是不同意特定主题的管理方式。
请注意,我们在 Meta 上组织话题时会使用所有可用工具,并在决定在何种情况下使用何种工具时,尽可能体谅发帖人和读者。
重复的话题很少会被删除,通常会被合并,这一般是针对交叉发帖的情况。即使在这种情况下,也会提供解释并附上指向其他话题的链接,以免造成混淆。
我认为这足以说明做出决定的原因,并指明可以继续讨论的更合适的地方。