【问题标题】:URL for a user content site and SEO用户内容网站和 SEO 的 URL
【发布时间】:2010-10-29 11:08:42
【问题描述】:

我在考虑如何编写我的 URL。我希望他们 A) 对用户友好 B) SEO C) 允许快速数据库查询。我拥有的信息是用户名、类别、mediaId、标题和其他我认为不必要的数据(日期、哈希等)。

我应该在域名之前还是之后使用用户名? (username.mysite.com/ vs mysite.com/username/)。

然后我需要决定是否应该使用 /media/The-Title-Of-Media 或 /media/mediaId/The-Title-Of-Media(媒体为 8 位或 16 位数字)或任何变体(例如media/The-Title-Of-Media-MediaId)。

我想要一个 mediaId 吗?我在想它可以加快数据库查询,但如果我根据用户名验证它(所以 mysite.com/deceptiveUserName/media/mediaId/title 是不允许的),只使用 WHERE userid=expectedUserId 可能是一个效率低下的细线使用主键查询?还使用 mediaId 允许标题不是唯一的,但允许用户懒惰地不给所有东西一个唯一的标题会是一个坏主意吗?如果我允许懒惰,用户可能会在之前和之后查看一个 url,并认为它们是由于标题的名称。还是很难在链接列表中找到链接?

-编辑-

这个怎么样。 mysite.com/username/media/mediaId/title。如果标题发生变化,我可以更新 URL 而不会中断链接,因为 mediaId 仍然相同。

【问题讨论】:

  • 它有助于展示各种备选方案。

标签: url seo


【解决方案1】:

StackOverflow 在 Url 中包含问题 Id,因此它一定是一个好习惯。 :)

我同意你的最终想法:mysite.com/username/media/mediaId/title

【讨论】:

    【解决方案2】:

    拥有子域会使 SSL 和 cookie 等事情变得复杂。尽可能避免使用它们。

    如果可以,请始终提供主键。

    不要过度设计这个。 SEO 来自于结构良好且相关的内容,而不是 URL 操纵的恶作剧。

    【讨论】:

    • +1:另外,用户很少输入网址——他们点击链接。但是,他们会为 URL 添加书签。好的 URL 永远不会改变 - 所以除了任何名称 slug 之外,它们还必须包含实际的 PK。
    猜你喜欢
    • 1970-01-01
    • 2017-04-26
    • 2012-04-04
    • 1970-01-01
    • 2013-10-31
    • 2010-09-20
    • 1970-01-01
    • 2012-09-21
    • 2011-01-23
    相关资源
    最近更新 更多