【发布时间】:2015-03-08 19:08:23
【问题描述】:
我正在构建一个小型数据库驱动的 PHP CMS。我正在尝试为这种情况制定最佳策略:
我有一个这样的网址:
http://www.my.com/news/cool-slug
有人保存或分享此网址(或被 Google 编入索引)。
现在我意识到 slug 不太正确,并将其更改为:
http://www.my.com/news/coolest-slug
Google 和之前保存该网址的用户会遇到404 错误。
这是最好和常见的解决方案(显示 404)还是我应该在我的数据库中保留一个表,其中包含映射到页面 ID 的所有生成 URL 的历史记录并使用 301 标头重定向?
这会不会对我的系统造成不必要的负载(此表可以获取大量记录...)?
【问题讨论】:
-
取决于网站、流量和他们的用户群。将之前的 slug 存储在当前的 slug 旁边而不是所有内容的完整历史记录可能会更高效。
-
但是我应该担心并构建一个系统来将旧 URL 重定向到新 URL,还是应该让它们达到 404?像 Wordpress 这样的系统有什么作用?