41

我想开始使用“SEO Friendly Urls”,但是相对于简单地通过整数查找而言,生成和查找大型、独特的文本“ids”的概念似乎是一个重大的性能挑战。现在,我知道这不是“人类友好”,但如果我从

http://mysite.com/products/details?id=1000

http://mysite.com/products/spacelysprokets/sproket/id

我仍然可以单独使用 ID 来快速查找详细信息,但 URL 本身包含将显示在该详细信息中的关键字。这对谷歌来说足够友好吗?我希望如此,因为这似乎比最终生成既独特又有意义的东西要容易得多。

谢谢!

詹姆士

4

11 回答 11

83

允许使用与堆栈溢出相同的方法来呈现页面时要小心。

http://stackoverflow.com/questions/820493/random-text-can-cause-problems

黑帽可能会导致长尾竞争对手的重复内容惩罚(相信我)。

您可以做两件事来保护自己免受这种情况的影响。

  • HTTP 301 将任何与您的 ID 匹配但与文本不匹配的入站显示 URL 重定向到正确的文本。

示例: http://stackoverflow.com/questions/820493/random-text-can-cause-problems 301 -> http://stackoverflow.com/questions/820493/can-an-seo-friendly-url-contain-a-unique-id

  • 使用规范的 URL。

<link rel="canonical" href="http://stackoverflow.com/questions/820493/can-an-seo-friendly-url-contain-a-unique-id" />

于 2009-09-18T00:57:53.540 回答
71

https://stackoverflow.com/questions/ 820493 /can-an-seo-friendly-url-contain-a-unique-id

我会说你很好。

于 2009-05-04T15:05:00.957 回答
15

查看 StackOverflow 使用的 URL。他们有一个唯一的 id,然后他们有对 SEO 友好的东西。您可以省略对 SEO 友好的内容,并且 URL 仍然有效。

于 2009-05-04T15:05:07.073 回答
5

你在这里制造了一个恶魔般的讨价还价,你正在用商业目标来换取技术目标。

如果您要问“从纯粹的业务和 SEO 角度来看,在 URL 中包含唯一 ID 是否更好?”;答案显然是不使用它们。

那么问题就变成了,如果你确实使用它们,它在搜索引擎中对你的伤害有多大?答案是肯定会产生一些负面影响。多少还有待确定。

就“用户友好”而言,不,它们绝对不是用户友好的。

就 Google 而言,他们声明“尽可能通过修剪不必要的参数来缩短 URL。” 请参阅他们的URL 结构文档。

于 2009-05-04T15:12:20.020 回答
4

我不知道将 ID 添加到 URL 会导致任何问题。事实上,它可能非常有用,因为它允许更改 URL 中对人类/搜索引擎友好的部分,而不会导致指向搜索引擎已编入索引的页面的链接断开。以 SO 为例,这是您问题的链接:

https://stackoverflow.com/questions/820493/you-can-put-any-text-you-want-here

于 2009-05-04T15:46:36.723 回答
1

没有错。正如Paul Tomblin 已经指出的那样,越来越多的服务已经开始使用混合解决方案。除了 SO,Tumblr 也使用这种模式(也许是第一个)。

此外,在某些服务(如Google 新闻)中,URL 必须包含唯一的数字 ID。

于 2009-05-04T15:14:49.577 回答
1

摆脱参数化的 URL 肯定会有所帮助。根据我的经验,只要 url 中没有 '?key=value' 对,包括 ID 在内都不会造成伤害或帮助。

于 2009-05-04T15:15:42.133 回答
1

我在这里有两个看似矛盾的观点:-

  1. 没有人看网址!经验已经“训练”浏览器用户将“地址”框内容呈现为不可见,他们知道内容将是“不可读”、“无意义”和“令人困惑”中的任何两个,因此他们完全忽略了它。

  2. 使用可以轻松转换为整数的字符串可能会比使用稍微难以转换为整数的较长字符串(hash() 与 to_int())提供轻微的性能优势。但是,在普通 Web 应用程序的上下文中,任何性能差异都可以忽略不计。

我的建议是坚持你喜欢的。

于 2009-09-18T01:22:32.530 回答
0

使用modrewrite 之类的东西在 URL 到达您的服务器之前对其进行解析。因此,您可以将http://oorl.com/99942/My-Friendly-Text-For-Search-Engines/之类的 slug 转换为http://oorl.com/lookup.php?id=99942。这还可以让您更改用于优化某些链接的 slug 和关键字,而不会损坏功能。

于 2009-05-04T19:05:57.087 回答
0

与友好 URL 相比,重复引用会造成更多负面影响,请小心使用带有 id 的虚假文本,您的竞争对手可能会错过使用它。

于 2013-03-29T22:51:44.913 回答
-1

是的,事实上,在你的 url 中包含一个数字对 SEO友好,因为它向谷歌暗示你一直在更新你的内容。

我相当肯定,如果您没有以某种方式将递增数字附加到您的网址,那么在 Google 新闻中被编入索引会变得更加困难。

于 2009-09-18T01:02:15.663 回答