0

我已经阅读了一些关于友好网址的内容,但我有点不确定什么更好。

我目前的网站使用以下结构http://www.domain.com/page.php?id=2

我正在使用记录 ID 来确定页面的内容。我的记录 id 是数字,并为添加的新页面增加。现有页面的内容会随着时间的推移而完全改变。但是,仍然使用相同的记录 ID(这是一个 cms,因此客户端可以这样做)。

我理解它的方式我有两个友好的网址选项:

http://www.domain.com/page/2

http://www.domain.com/some-text-describing-the-page

现在因为我通过记录 ID 识别内容,所以我认为第一个选项更有意义。

我的客户似乎想要选择二。

经过一番阅读,我发现了两个相互矛盾的观点。

根据 Tim Berners-Lee(WWW 的架构师)的说法,他表示您想要一个 URI,它有可能在 2 个月、2 年、200 年后保持不变。所以你不想为你的页面使用页面标题或类似的东西。如果您更改页面内容,您要么被迫更改内容并保留 URI,要么更改 URI 并被悬空链接卡住。你可以在这里阅读他的文章(http://www.w3.org/Provider/Style/URI

然而,互联网上的许多其他人(我不知道权威)明确表示,您需要一个描述性但简短的 URI 以获得最佳 SEO 价值。根据我的阅读,主要是为了反向链接和在锚文本中使用关键字,因为人们只是将链接本身用于锚文本。因此,在链接本身中包含关键字有助于搜索引擎在没有自定义标题的情况下了解链接的内容。

在我看来,差异与长期与短期有关。

我是否正确掌握了这一点?

如果我要使用用户定义的 slug 样式 URI,我是否必须只允许我的用户在字段中输入他们想要的任何内容并检查当前数据库以查看它是否存在?如果是这样,我是否应该通过对已知记录 id 运行查询来预测静态链接,然后使用结果生成将被重写回格式的 url http://www.domain.com/page.php?id=2:?

在我看来,这将是很多额外的开销。

4

1 回答 1

1

我会在这两者之间提出一些建议:

http://www.domain.com/page/2/some-text-describing-the-page

或没有page

http://www.domain.com/2/some-text-describing-the-page

您仍然可以从 Url 中获取页面 ID,并且还有标题!更重要的是,即使页面标题稍后更改,您仍然可以获得正确的内容。

所以想想这样的情况:用户创建一个页面,它收到 Id=4 并且它的标题是My great title. 根据该信息生成 Url,例如http://www.domain.com/page/3/my-great-title。2 个月后,用户将标题更改为This title is better then the last one!. 网址也更改为http://www.domain.com/page/3/this-title-is-better-then-the-last-one. 但是,Url 中仍然存在3,因此您可以显示正确的内容!您还可以检查 Url 的其余部分是否是实际的,并将(301 将是最好的)重定向到新的,以让搜索引擎知道 Url 已更改。

于 2013-03-12T18:30:33.363 回答