许多网站,包括这个网站,添加了显然被称为slugs的东西 - 描述性的,但据我可以说无用的文本 - 到URL的末尾.
例如,网站为此问题提供的URL是:
/sf/ask/17360801/
但是以下URL也可以正常工作:
/sf/ask/17360801/
本文的重点是以某种方式使URL更加用户友好或是否还有其他一些好处?
slug使URL更加用户友好,您知道单击链接时会发生什么.如果搜索字在URL中,Google等搜索引擎会将网页排名更高.
可用性是一个原因,如果您在电子邮件中收到该链接,您就会知道会发生什么.SEO(搜索引擎优化)是另一个原因.谷歌等搜索引擎会根据网址中包含的关键字对您的网页进行排名
我最近更改了我的网站网址格式:
www.mywebsite.com/index.asp?view=display&postid=100
至
www.mywebsite.com/this-is-the-title-of-the-post
并注意到更改后点击文章的费率增加了约300%.它确实有助于用户根据搜索引擎优化的目的决定他们在点击的内容是否相关,但我不得不说我在改变后看到的影响不大
我同意其他回应,任何错误类型的slug应该301重定向到正确的形式.换句话说,/sf/ask/17360801/
应该重定向到/sf/ask/17360801/
.它还有一个未提及的好处 - 如果您不重定向到规范URL,则表明您的重复页面数量几乎无限.谷歌讨厌重复的内容.
也就是说,只要你重定向,你应该只关心内容ID并允许slug的任何输入.为什么?
/sf/ask/17360801/
网站 - 附加蛞蝓到最末端的专用网址
...哎呀,邮件软件切断了URL的末尾!没问题,因为你仍然可以滚动/sf/ask/17360801/
这种方法的一个大问题是,如果你从内容的标题中获取slug,你将如何处理非ASCII,UTF-8标题?
大多数网站使用它的原因可能是SEO(搜索引擎优化).雅虎过去常常对URL本身中搜索关键字的存在给出合理的权重,这也有助于Google的结果.
最近,搜索引擎降低了对URL中关键字的权重,可能是因为该技术现在在垃圾邮件网站上比在合法网站上更常见.如果有的话,URL中的关键字现在对搜索结果的影响非常小.
至于stackoverflow本身,搜索引擎优化可能是一种动机(旧习惯很难)或仅仅是为了可用性.
它基本上是一个更有意义的资源位置.使用ID是完全有效的,但它对机器而言比人更多.
严格来说,如果slug是独一无二的,则不需要ID,您可以通过在日期内确定它们来更容易地确保独特的slu ..
即:
/2008/sept/06/why-some-websites-add-slugs-end-of-urls/
基本上,这利用了在同一天使用两个相同slu的低可能性.如果发生冲突,一般惯例是在slu the的末尾添加一个计数器,但你很少见到这些:
/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/
很多slug算法也摆脱了像"the"和"a"这样的常用词,以帮助保持URL的简短.这种范围的方法还可以非常直接地查找给定日期,月份或年份的所有资源 - 您只需切断段.
此外,stackoverflow URL在某种意义上是错误的,因为它们引入了一个额外的段以便使用slug,这违反了每个段应该表示降低资源层次结构的想法.
slug一词来自报纸/出版业务.这是一个简短的标题,用于识别正在进行的故事.对URL语义感兴趣的人开始在他们的URL中使用简短的缩写标题.它也在SEO领域得到回报,因为URL中的关键字增加了页面的重要性.
具有讽刺意味的是,许多网站已经开始在其网址中放置一个完整的序列化连字符版本的标题,用于严格的搜索引擎优化目的,这意味着术语slug不再适用.这也使语义纯粹主义者感到沮丧,因为许多实现只是在其URL的末尾添加了标题的序列化版本.
我注意到你可以自由地改变文本.此URL似乎也可以正常工作.
/sf/ask/17360801/
如前所述,'slug'帮助人们和搜索引擎......
值得注意的是,在页面的源代码中有一个规范网址
这会使页面多次停止索引.
例:
从您的问题中删除格式,您将看到部分答案:
/sf/ask/17360801/
VS
/sf/ask/17360801/
没有标记,第二个是自描述的.