数字标签的奇怪 URL 出现 500 错误(Google 抓取失败)

我的论坛有一个标签恰好是4位数字“6309”,它已经存在一段时间了。该标签在帖子中显示正常,对应的URL为 /tag/210-tag/210

但访问类似 /tag/6309 的链接时,并没有返回美观的404页面,而是出现服务器错误:

哎呀

驱动本讨论论坛的软件遇到了意外问题。对此造成的不便,我们深表歉意。

我猜测,此前这可能是引用该标签的有效方式。由于这是服务器错误,谷歌的爬虫正在向我报告此问题。

标签页面如下所示:

我认为返回404状态才是正确的做法。

2 个赞

是的,这看起来不太对:

ActionView::Template::Error (No route matches {action: "tag_feed", controller: "tags", tag_id: "9999"})
  app/views/list/list.erb:136
  app/views/list/list.erb:134
  lib/topic_list_responder.rb:16:in 'block (2 levels) in TopicListResponder#respond_with_list'
  lib/topic_list_responder.rb:7:in 'TopicListResponder#respond_with_list'
  app/controllers/tags_controller.rb:223:in 'block (2 levels) in <class:TagsController>'
  app/controllers/tags_controller.rb:229:in 'TagsController#show'
  app/controllers/application_controller.rb:447:in 'block in ApplicationController#with_resolved_locale'
  app/controllers/application_controller.rb:447:in 'ApplicationController#with_resolved_locale'
  app/controllers/application_controller.rb:1098:in 'ApplicationController#ensure_dont_cache_page'
  lib/middleware/omniauth_bypass_middleware.rb:35:in 'Middleware::OmniauthBypassMiddleware#call'
  …

我们应该修复这个错误;如果找不到标签 ID,我们或许还可以回退到查找全数字形式的标签名称。

Wayback 首次注意到该标签出现在 2025-05-13,其 URL 为 https://retrocomputingforum.com/tag/6309,该链接在当时 可以正常访问,并一直有效直到 2025-12-16

1 个赞

啊,观察得很仔细。也许某种 3xx 重定向响应是合适的,甚至比 404 更好,以防该标签有效?