什么是“友好的URL”?

时间:2009-02-06 22:23:07

标签: search browser seo friendly-url

我最近阅读了很多关于“友好网址”的讨论(包括本网站和其他地方),但我不确定究竟是什么让网址“友好”以及为什么我们真正关心(直到某一点)。插图:

以下是大多数当前Web开发人员称之为“友好”的URL示例:

  

www.myblog.com/posts/123/this-is-the-name-of-my-blog-post

然而,这将被视为“不友好”(即坏,尼安德特人,无知,愚蠢):

  

www.myblog.com/posts.aspx?id=123

我的问题:

  • “友好”网址是否包含有关相关博文的重复识别信息?换句话说,一旦你有帖子的id(123),为什么你需要标题?这不会违反“不要重复自己”的咒语吗?
  • 就用户而言,URL的形式有何不同?用户是否真的手动键入完整的网址(当然不是TLD)?用户是否曾查看页面的URL以确定页面的内容?为什么我们需要URL中博客文章的标题?这不是页面的<title>标记和内容的用途吗?
  • 我经常听到SEO作为首选“友好”网址形式的原因。为什么搜索引擎蜘蛛关心URL?它们不只是抓取页面的自动化软件(以及指向其中包含的其他页面的链接)吗?如果搜索引擎像其他软件组件(例如数据库访问组件)一样编写,则URL将只是一个无意义的标识符(类似于关系数据库中的rowguid)。如果我使用上面的“友好”URL作为表的主键设计数据库模式,我会(非常正确地)被剔除。

我之前说过“达到一定程度”,因为很明显,网址可能会失控。以下是来自Amazon.com的实际网址,我认为他们认为没有人会认为“友好”:

  

http://www.amazon.com/Bissell-Kitchen-Housewares/b/ref=amb_link_5001972_17?ie=UTF8&node=694500&pf_rd_m=ATVPDKIKX0DER&pf_rd_s=gp-center-5&pf_rd_r=1ZXNJFE0CCFFDH4B9HGH&pf_rd_t=101&pf_rd_p=405478901&pf_rd_i=510080

20 个答案:

答案 0 :(得分:59)

大约10年前,Tim Berners-Lee(WWW的建筑师)写了a great article about this subject

  • 您的示例是一个错误的网址 - 但不仅仅是因为它同时具有ID和“slug”(页面标题的缩写连字形式)。 从长远来看,将网页标题放入网址会有问题。内容 会随着时间的推移而发生变化。如果您更改了该博客帖子的标题,您将被迫在保留旧URL或更改URL以匹配新标题之间进行选择。更改URL将破坏之前指向该页面的链接;而不是更改它意味着你将拥有一个与页面不匹配的URL。这对用户都没有好处。最好只使用 www.myblog.com/posts/123

  • 用户通常需要输入网址,但更重要的是,有时他们还会编辑现有网址以查找网站中的其他网页。因此,通常可以获得可发现的网址。例如,如果我想看到帖子#124,我可以轻松查看当前的URL,并确定我想要查看的页面的URL是www.myblog.com/posts/124。这是一个用户友好程度,可以帮助人们找到他们正在寻找的东西。包括其他信息(如帖子的主题)可能会使这变得不可能 - 因此它减少了我的探索选择。

  • 忘记搜索引擎优化。搜索引擎技术已经在一段时间内降低了SEO黑客的效率。好的内容仍然是王者 - 从长远来看,你将无法对系统进行游戏。

答案 1 :(得分:18)

对我来说,友好网址意味着有人尝试在网址中加入语义信息,使其更适合人类消费。这是一个有趣的例子,计算机 - 计算机接口被增强和构建,以创建一个更好的人机界面。

所以,在你的两个例子中:

  • www.myblog.com/posts/123/this-is-the-name-of-my-blog-post很友好,因为您已将标题包含在网址中 - 告诉您您的页面内容。
  • www.myblog.com/posts.aspx?id=123是不友好的,因为它含糊不清且模糊不清:它对数据库非常有意义,但对你或我来说都没有。

友情网址在某些情况下非常棒,在其他情况下无用。基本上,如果用户将要接触到它,我会将友好的URL创建作为优先事项,这不仅仅是美学问题。如果您可以快速查看并了解各种选项的内容,那么它可以更轻松地从地址栏返回到 更多更多更加明显<+>>重新关注网页链接。

将所有这些与Firefox 3+中的棒棒相结合(当然也会在其他浏览器中使用),并且当您处理友好的URL时,地址栏中的自动完成将变得非常强大。

答案 2 :(得分:11)

关于querystring对抓取器的确切影响似乎有很多相互矛盾的信息,但大家一致认为,有多个参数会损害你的SEO,因为长的querystring变量表示动态内容,所以大多数搜索引擎都会为你的网页编制索引要少得多。

在您的网址中添加一个slug,例如您的示例中的 this-the-name-of-my-blog-post ,也会使您的链接彼此之间的差异更大id号码,并在网址中添加更多重要的字词。这些都是搜索引擎寻找的东西。

我个人觉得这样的网址在视觉上更容易解析,因为使用的标点字符较少,而且查询字符串中的名称 - 值对可能非常冗长且难以记住。

答案 3 :(得分:7)

关于如何在网址中添加不必要的信息,这是一个很好的观点。

http://stackoverflow.com/questions/522466/what-makes-a-friendly-url

一旦知道了唯一ID 522466 - 剩下的就没用了,所以它纯粹用于使URL看起来“漂亮”,并为用户提供关于页面链接的想法。但这会产生另一个问题。大多数网站都没有“验证”网址的这一部分,因此您可以将 -

http://stackoverflow.com/questions/522466/omg-goatse-bought-by-bill-gates

然而它仍将链接到这篇文章。您可以看到这可能导致更多问题,而不是它们的价值,因为它们可能被恶意使用。

我觉得Digg采取了正确的方法。他们不在URL中使用ID。在幕后,他们完全从给出的标题中获取数据库中的ID。

http://digg.com/linux_unix/I_Like_Linux_so_my_aunt_sends_me_this_for_Christmas

对我而言,这是完美网址。它为我提供了点击链接时我感到安全所需的所有信息。

事实上,游戏扮演着如此巨大的角色,在digg的世界里,人们“盲目挖掘”纯粹基于他们喜欢标题或者对它感兴趣的事实。如果您的网址看起来很有趣,那么您的网站可能会获得更多流量。与此同时,您将使其更加用户友好,更漂亮,搜索引擎将感谢您。据我所知,友好的网址对每个人来说都是胜利。

答案 4 :(得分:6)

我对你的三颗子弹的想法:

  • 我说这不是最佳网址。我不知道为什么会显示帖子标识符和标题。我根本没有在我的网址中包含帖子ID,只包括标题和(有时)日期
  • 对于用户来说,越短越好。
  • 搜索引擎查看网址。无论是否有意义,他们都有。在URL中使用关键字将提供一些SEO优势。

答案 5 :(得分:4)

我碰巧同意你的意见,但 shhh 不会告诉任何人。

这只是我的拙见,但对我而言似乎很愚蠢

http://stackoverflow.com/questions/522466/

http://stackoverflow.com/questions/522466/what-makes-a-friendly-url

是同一页面。我的意思是,我可以看到带连字符的问题标题为URL提供了一些上下文,但除非你知道该部分是可选的,否则URL会不必要地变长。

答案 6 :(得分:4)

首先,他们对搜索引擎抓取工具很友好。 Google和其他人高度重视网址中与网页上的字词匹配的字词,因此如果您的博客帖子的标题位于网址中,它将有助于您的搜索引擎。

其次,他们对那些不知道他们正在访问什么的人友好。您用于比较的哪个链接如果遇到您的推特/电子邮件/ IM /等,您更有可能点击?

答案 7 :(得分:4)

啊......诀窍是网址对谁友好。搜索引擎认为第一个网址更友好,因为它显然在网址中包含内容信息,并且看起来不像使用不同参数重复的同一网页。

例如,比较

www.aTvShowSite.com/show.aspx?id=123
www.aTvShowSite.com/show.aspx?id=124

一个机器人会说好的,我不知道这些是什么......但它们看起来和我一样。

比较

www.aTvShowSite.com/shows/AmericanIdol
www.aTvShowSite.com/shows/Lost

使它们看起来像不同的页面(即使它可能是提供它们的相同的aspx页面),并且机器人倾向于将它们排名更高。

编辑: 此外,应该注意的是,许多机器人会查看网址的文本以确定有用性,因此搜索“丢失”可能会比第一种类型更多地触及第二种类型的网址,即使网页内容相同也是如此。

答案 8 :(得分:4)

至于:

  

这不会违反“不要重复自己”的咒语吗?

这指的是应用程序 CODE !! ,而不是它自己的应用程序!!

完全有意义

  • &lt; title&gt;中的标题标签
  • 在网址
  • 并作为内容的第一行。

几乎在其他任何地方,内容都需要它。

如果您的代码应如下所示,那么“咒语”是指什么:

  <title><%=obj.getTitle()%></title>
  Reading:<h1><%=obj.getTitle()%></h1>
  Link to this:<a href="getHrefFor( object.getTitle() )">obj.getTitle()</a>
  Etc. etc.

而不是在应用程序周围使用不同的复制/粘贴代码方法。

答案 9 :(得分:3)

您展示的“不友好”网址会公开实施细节:如果您将来某个时候决定放弃ASP并使用其他内容,该怎么办?您必须更改所有URL(baad!)或使用重命名方案。

在URL中重复标题可能不是必要的,但是当您进行大量链接粘贴时,它会变得很方便,以便仔细检查您是否链接到正确的位置。

答案 10 :(得分:2)

我们的网站使用所谓的“不友好”网址,但我们会为特定地点的特定位置创建特殊的“友好”网址,以供特定功能使用,特别是在印刷材料上。

例如,我们的停车票上有http://www.dnv.org/parking

CP

答案 11 :(得分:1)

嗯,首先,尝试将字符与(a-z,A-Z,0-9)区分开来,当然还有:/._-在网址之外。 不是每个人都有他们键盘上的所有这些(例如,我没有&在我的键盘上,我也没有〜)

例如,当做一些url解析或类似的东西时,如果url语法是“干净的”也会有帮助

答案 12 :(得分:1)

Matt和@bigmattyh:SEO不是“黑客”:它理解“好内容”在网络上的含义。页面标题是内容的一部分。链接中的好锚文本是“好内容”(而不是像“点击此处”这样的单词作为链接文本)。将链接放在上下文而不是列表中是“好内容”。

页面标题是低调的结果,但它们仍然是提高SERP的最简单方法之一。是的,入站链接(及其质量​​)至关重要,但标题可以创造奇迹,特别是在短期内。您不必使用页面标题(可能会不时更改)作为帖子标题:手动汇总内容。

不要猜测这些东西:(a)阅读像SEOmoz.org这样的来源和(b)严格分析你自己的网站。

答案 13 :(得分:1)

另一点:人们有时会手动编辑URL,以便上传目录树。因此,他们可能会尝试加载http://site.com/a/b之类的网页,收到“未找到”错误,然后尝试http://site.com/ahttp://site.com。当然,如果您的URL不是基于实际的目录树,则可能无效。但你仍然可以尝试支持它。

有些浏览器甚至鼓励这样做,比如带有错误消息的IE浏览器,以及右键单击页面标题时出现的菜单的Safari。

答案 14 :(得分:1)

在这种情况下,它并没有真正打破DRY主体,因为就搜索引擎而言,'522466'与'what-makes-a-friendly-url'不同。

通常对于像StackOverflow这样的网站,令牌是唯一重要的信息;通常你可以在那之后放置任何你想要的东西,它会把你带到同一个地方(被网络服务器忽略)。

页面描述仅用于帮助搜索引擎识别页面的内容(这很好)

答案 15 :(得分:1)

第二个URL看起来更加用户友好,而第一个看起来更适合搜索引擎。

搜索引擎与网址中出现的字词具有更高的相关性。域名获得最高(因为它不能更改),URL的其余部分获得高优先级,因为长度有限,然后分析文档正文。

我的回答非常主观,因为这取决于你是否对人类友好(易于手动打字或阅读给朋友)或者你是否对搜索引擎友好(提高你的排名。)

答案 16 :(得分:0)

术语可读网址也经常使用。使用友好/可读的网址是一种SEO出生的技术,就是它。否则路径越短越好。执行重写规则通常会减慢使页面快速进入客户端的过程,所以也要考虑到这一点。

答案 17 :(得分:0)

在我看来,ID和UUID永远不应该是URL的一部分,永远不会。

1)有些NoSQL数据库根本不使用ID,它们使用UUID。 UUID很长,部分用短划线分隔。 Google会将短划线视为单词分隔符:这意味着您的网址会有5个无用的关键字。

2)人类不理解ID或UUID。一个人理解单词和谈话URL。

3)如果标题发生变化,您可以像WordPress一样进行重定向,就像@TRiG指出的那样。

4)最后,请记住使用日期,这样您就可以辨别出具有相同标题并在不同年份,月份或日期发布的两篇文章。例如,您可以对同一本书进行两次评论(第一版和第二版)。

http://example.com/2013/02/11/data-mining-concepts-and-techniques

http://example.com/2011/05/23/data-mining-concepts-and-techniques

5)日期也可以帮助任何用户判断内容是否是最近的。

6)日期会为您的网址添加一个重要的关键字:年份。假设我想看看世界上最美丽的女孩,我会输入Google:“2014年世界上最漂亮的女孩”。我的网址是:

http://example.com/2014/07/10/the-most-beatiful-girls-in-the-world

7)最后但并非最不重要的是,Chrome会缓存您访问过的网站,因此您只需在地址栏中输入“女孩”即可找到上述网站。

答案 18 :(得分:0)

主题链接的内部页面在逻辑上相互配合。这是筒仓URL结构的最佳方法。

最好的示例是不使用客户网站,而是查看BBC网站,这是最佳做法:


www.bbc.com/
www.bbc.com/news
www.bbc.com/news/world
www.bbc.com/news/world/澳大利亚

内页已正确组织。这是告诉搜索引擎如何在网站上移动的最佳做法。

答案 19 :(得分:-3)

术语可读URL也经常使用。使用友好/可读的网址是一种SEO出生的技术,就是它。否则路径越短越好。