简而言之,为什么要使用像http://stackoverflow.com/badges/6/supporter
这样的东西,而不是像http://stackoverflow.com/badges/6/
那样“更简单”(主观地,那样)。
即使在我自己的网站上,我也只是使用/ post / 6 /来引用帖子(通过ID,即使我仍然存储了一个slug。)而不是/post/6/small-rant-on-urls
,在某些情况下,他们可以甚至 更荒谬 ,远远超过真正必要的。
答案 0 :(得分:21)
Search Engine Optimisation将是一个,同时使URL对人类更具可读性。搜索引擎通常喜欢您的URL,标题和H2来包含页面的“主题”。
如果你有两个,那么你可以手动输入/ ID并自动获取“华丽”的URL并重写..稍微保留你的手指:)
答案 1 :(得分:6)
因为如果你不小心的话,你可能会最终得到重复的东西。我想堆栈溢出添加了ID,因为在创建帖子量的情况下,重复的可能性很高。
其他系统可能选择不在URL中使用ID - 例如,博客系统可能不需要。
如果您有用户生成的内容导致创建一个包含帖子ID的新URL,那么这是一个更好的主意。如果可以创建新URL的唯一方法是通过管理员类型访问,只要您检查重复项,就可以不使用它。
答案 2 :(得分:4)
在所有链接中添加slug 内容有助于搜索引擎,因为搜索引擎通常会使用URL本身中的单词来帮助索引内容。
答案 3 :(得分:3)
在网址中包含id的原因是它可以让后台更容易从数据库中检索正确的文章,因为可以对ID而不是文章的标题执行查找。
包含文章完整标题的原因是Google为文件名中匹配的搜索字词提供了大量的奖励积分。
答案 4 :(得分:2)
@Greg Hewgill
在内容的所有链接中添加slug有助于搜索引擎,因为搜索引擎通常会使用URL本身中的单词来帮助索引内容。
我应该澄清一下:我的意思是指其中包含id 和 slug的网址。我只是没有看到像/post/1/la-la-la-la-text-hahahaha
vs /post/1/
或 /post/la-la-la-la-text-hahahaha
这样的重点,因为第一个会在最后没有完整文本的情况下工作
答案 5 :(得分:2)
URL是Web用户界面的一部分。
有一个eyetracking study of search engine use发现人们在搜索结果中花费了大约24%的凝视时间来查看网址。
在评估目的地的可信度和实用性时,搜索者对URL特别感兴趣。如果URL看起来像垃圾,则人们不太可能点击该搜索匹配。另一方面,如果URL看起来像页面将解决用户的问题,他们更有可能点击。
答案 6 :(得分:0)
可能是通过id而不是slug在博客中获得帖子的速度更快,因此将SQL查询的id和搜索引擎(SEO)的slug放在一起。
https://stackoverflow.com/users/58163/movaxes65675
我喜欢/ post / la-la-la-la-text-hahahaha类型,我能记住网址,知道帖子的标题是什么(在实际加载网站之前)。不喜欢/ post / 1 /它对我来说没什么意义,但是发布#1(营销不好?)
编辑:id也有助于避免重复,因为andybaird指向
答案 7 :(得分:0)
首先,应该指出“Web 2.0样式URL”实际上是REST的一部分。这些URL有时称为RESTful URL。 claimed benefits是:
- 由于其支持,提供更短的响应时间和更少的服务器负载 用于表示的缓存;
- 通过减少维护会话的需要来提高服务器的可扩展性 州。这意味着不同 服务器可以用来处理 会话中的不同请求;
- 要求编写的客户端软件少于其他方法, 因为单个浏览器可以访问 任何申请和任何资源;
- 较少依赖供应商软件和附加层的机制 基于HTTP的消息传递框架;
- 与替代品相比,提供相同的功能 沟通方法;
- 由于以下原因,不需要单独的资源发现机制 使用超链接 表示;
- 提供更好的长期兼容性和可进化性 特征比RPC。这个到期了 至:
- HTML等文档类型的演变能力 向后突破 - 或 向前兼容性;和
- 资源添加对新内容类型的支持的能力 定义没有丢弃或 减少对旧内容的支持 类型。