为什么有些网站在url的末尾添加“Slugs”?

许多网站,包括这一个,都添加了显然被称为slu – 的东西 – 描述性的,但据我可以告诉无用的文本 – 到URL的末尾。

例如,网站给这个问题的url是:

https://stackoverflow.com/questions/47427/why-do-some-websites-add-slugs-to-the-end-of-urls

但是下面的URL也是一样的:

https://stackoverflow.com/questions/47427/

这个文本的目的是为了让URL更友好或者还有其他的好处吗?

slu make使URL更加用户友好,你知道当你点击一个链接时会期待什么。 search引擎,如谷歌,如果search字词在url中排名更高的页面。

可用性是一个原因,如果你收到你的电子邮件链接,你知道会发生什么。 SEO(search引擎优化)是另一个原因。 谷歌等search引擎将排名更高的网页中包含的关键字的网页

我最近改变了我的网站url格式:

http://www.mywebsite.com/index.asp?view=display&postid=100

http://www.mywebsite.com/this-is-the-title-of-the-post

并注意到更改后的文章点击率提高了约300%。 这肯定有助于用户决定他们想要点击的内容是否与search引擎优化的目的相关,尽pipe我不得不说,在改变之后我看不到什么影响

我同意其他答复,任何错误types的slu should应该301-redirect到适当的forms。 换句话说, https://stackoverflow.com/questions/47427/wh应该redirect到https://stackoverflow.com/questions/47427/why-do-some-websites-add-slugs-to-the-end-of-urls 。 它还有一个没有提到的好处 – 如果你不redirect到一个规范的URL,它会显示你有几乎无限的重复页面。 Google不喜欢重复的内容。

也就是说,只要你redirect,你应该只关心内容ID,并允许任何input。 为什么?

https://stackoverflow.com/questions/47427/why-do-some-网站 – 添加恶作剧到末尾的url

…哎呀,邮件软件切断了URL的结尾! 没问题,因为你仍然可以滚动只是https://stackoverflow.com/questions/47427

这种方法的一个问题是,如果你从你的内容的标题中得到slug,你将如何处理非ASCII,UTF-8标题?

这基本上是一个更有意义的资源位置。 使用ID是完全有效的,但对于机器来说意味着更多的是人。

严格来说,如果slu is是独一无二的,则不需要使用身份证,您可以通过在date范围内确定独特的slu </s>,从而更容易地确保身份。

即:

 /2008/sept/06/why-some-websites-add-slugs-end-of-urls/ 

基本上这利用了在同一天使用两个相同的slu low的低可能性。 如果发生冲突,一般惯例是在slu end的末端添加一个计数器,但是很less见到这样的情况:

 /2008/sept/06/why-some-websites-add-slugs-end-of-urls/ /2008/sept/06/why-some-websites-add-slugs-end-of-urls-1/ /2008/sept/06/why-some-websites-add-slugs-end-of-urls-2/ 

许多slugalgorithm也摆脱了“the”和“a”这样的常见词来帮助保持URL不变。 这种范围的方法也使得查找给定的一天,一个月或一年的所有资源变得非常简单 – 只需简单地删除段。

另外,stackoverflow的URL是不好的,因为它们引入了一个额外的段来表示slug,这是违背了每个段应该代表递减资源层次的想法。

大多数网站使用它的原因可能是SEO(search引擎优化)。 雅虎过去给出了一个合理的权重,在URL本身的search关键字的存在,这也有助于谷歌的结果。

最近,search引擎已经降低了URL中关键字的权重,可能是因为这种技术在垃圾网站上比在合法网站上更常见。 url中的关键字现在对search结果只有很小的影响。

至于stackoverflow本身,search引擎优化可能是一个动机(旧习惯死难)或仅仅为了可用性。

“slu </s>”一词来自报纸/出版业。 这是一个简短的标题,用于识别正在进行的故事。 对URL语义感兴趣的人开始在他们的URL中使用简短的缩写标题。 它也在SEO土地上得到回报,因为URL中的关键字对于页面来说更重要。

具有讽刺意味的是,许多网站已经开始在他们的url中使用完整的连字符连字符版本,严格限制search引擎优化的目的,这意味着术语slu no不再适用。 这也使得语义纯粹主义者哗然,因为许多实现只是在URL的末尾加上这个标题的序列化版本。

我注意到你可以自由地改变文字。 这个url似乎也起作用。

https://stackoverflow.com/questions/47427/why-is-billpg-so-very-awesome

如前所述,“slu'”帮助人们和search引擎

值得注意的是,在页面的源代码中有一个规范的URL

这会使页面多次停止索引。

例:

 <link rel="canonical" href="http://stackoverflow.com/questions/47427/why-do-some-websites-add-slugs-to-the-end-of-urls"> 

从你的问题中删除格式,你会看到部分答案:

https://stackoverflow.com/questions/47427/

VS

https://stackoverflow.com/questions/47427/why-do-some-websites-add-slugs-to-the-end-of-urls

没有标记,第二个是自描述。

发送链接时不要忘记可读性,而不仅仅是在search引擎中。 如果您通过电子邮件向某人发送第一个链接,他们可以查看该url,并了解其具体内容。 第二个在点击之前不显示该页面的内容。

如果您通过电子邮件向某个人发送链接,那么通过实际写出一个描述而不是让另一个人parsing到描述所在的url,并尝试阅读一堆-hyphenated字粘连在一起。

首先,这是search引擎优化和用户友好的,但在例子(本网站)的情况下,它做得不好或不正确(因为它是开放的黑帽子的技巧和排名中毒别人,这将反映在这个网站严重) 。

如果

https://stackoverflow.com/questions/47427/why-do-some-websites-add-slugs-to-the-end-of-urls

有内容的话

https://stackoverflow.com/questions/47427/

https://stackoverflow.com/questions/47427/any-other-bollix

不应该是重复的。 他们实际上应该自动检测到的链接是不是使用当前的文本(显然,slug是由问题标题定义,可以稍后编辑),他们应该自动301redirect

https://stackoverflow.com/questions/47427/why-do-some-websites-add-slugs-to-the-end-of-urls

从而确保“一条内容到一条URI”规则,如果URI移动/改变,确保旧书签通过301redirect跟随/移动(这样智能浏览器可以更新书签)。

理想情况下,“slug”应该是唯一需要的标识符。 实际上,在像这样的dynamic网站上,您必须拥有一个唯一的数字标识符,或者像Digg一样开始向“slug”添加/递增数字。