搜索引擎友好的URL包含数字......好还是坏?

时间:2010-02-15 08:25:37

标签: url mod-rewrite url-rewriting seo

我创建了一个具有分层结构的网站,并且具有搜索引擎友好(SEF)网址,如:

/seeds-1/
/seeds-1/fruits-2/
/seeds-1/fruits-2/black-berries-5/
/seeds-1/fruits-2/blue-berries-6/
/seeds-1/fruits-2/strawberries-7/
/seeds-1/vegetables-3/
/seeds-1/vegetables-3/potato-8/
/seeds-1/vegetables-3/onion-9/
/seeds-1/vegetables-3/cabbage-10/
/seeds-1/flowers-4/
/seeds-1/flowers-4/red-rose-11/
/seeds-1/flowers-4/tulips-12/

等等。你会注意到最后的数字是ID。现在我已经完成了网站和一切,“顾问”介入并告诉我的客户“......网址 100%搜索引擎友好,使他们 100%< / strong>搜索引擎友好,必须删除数字......“。我显然无法与“顾问”交谈,因为他们已经完成了工作消失

如果有人可以为这两种类型的网址指出PRO和CON,我现在会感激不尽。我需要一些可靠的论据来说服客户,而且我真的需要知道我是否在为我的网站选择这种URL方案时犯了错误。

编辑----

可能是我在偷懒。重写规则如下:

RewriteRule ^[^/]+-([0-9]+)/$ object.php?ObjectID=$1
RewriteRule ^[^/]+-([0-9]+)/[^/]+-([0-9]+)/$ object.php?ObjectID=$2
.
.
.

从查询字符串中提取ObjectID相当容易,将其转换为整数并在SQL查询中使用它。我认为在查询中使用文本比较(WHERE Name ='%s')与使用整数比较(WHERE ObjectID =%d)相比较慢,因此我在犹豫。问题更像是值得使网址更加人性化,代价是降低编码/性能。

4 个答案:

答案 0 :(得分:4)

同意cherouvim并将扩大。

这里要考虑两件事 -

人性化是一点......如果你的用户想要输入蔬菜/洋葱/ vidalia而不是vegatables / onion-10,那么它对最终用户来说显然更有意义。

此外,搜索引擎也可以获得更多细节......所以搜索vidalia洋葱可能会为您的网站带来更好的排名。

最后,顾问正在推广可读性的流行语。是的,从长远来看它可能总体上更好(并且应该像编写一个很好的小.htaccess文件一样简单),但是你的设置确实没什么问题。

修改

老实说,它真的归结为客户的需求。正如其他用户也指出的那样,在您呈现链接的方式上确实没有太大的性能差异......

现在真正重要的是,如果您的客户想要它呈现。他们是否关心这类信息是否可供人类阅读?如果他们只是想接受顾问的建议那么你也可以实施你的重写规则。

答案 1 :(得分:3)

搜索“种子”,“鲜花”,“蔬菜”等将匹配网址,因此网址很好,引擎会很好地处理它们。

是否要让他们更友好是另一个问题。

答案 2 :(得分:1)

从技术角度来看,如果关键字在其上下文中不是唯一的,则只需要数字ID。

例如,如果第一级中可以有多个种子,则会出现这种情况。那么你需要数字ID(或另一个唯一值)来区分不同的种子

/seeds-1/…
/seeds-2/…
 ⋮

但是如果所有关键字在其上下文中都是唯一的(路径是唯一的),那么您可以删除数字ID而不会丢失任何信息。

答案 3 :(得分:1)

URL中有ID是没有错的。它遍布整个地方。例如:

  1. 此处有Stack Overflow(/ questions / 2264708 / search -...)或
  2. 亚马逊(http://www.amazon.com/Code-Complete-Practical-Handbook-Construction/dp/ 0735619670 /)
  3. 只是两个例子,还有更多。将ID嵌入到URL中几乎无处不在,特别是对于大型网站或大型数据集,在slug上进行字符串比较是非常昂贵的。

    它根本不会伤害SEO。它可能对用户不太友好,因为用户不能“猜测”URL,但这完全是一个不同的问题。