【发布时间】:2010-12-05 05:21:42
【问题描述】:
我正在考虑为新网站实施漂亮链接的选项。
我了解如何使基础工作发挥作用,例如:
/view/postTitle/7895
我可以直接拿起 id 7895 而忽略标题。
但是,我看到一些网站设法完全摆脱了 id:
/view/postTitle
这是如何工作的?
我能想到的唯一方法是,在每次请求时,pageTitle 都会作为字符串发送,并且一些代码会执行一些 SQL 检查以返回正确的 id。然而,这意味着很多潜在的昂贵的 SQL 查询不是吗?尤其是当您有很多帖子时。
另外,这意味着每次有人创建帖子时,我都需要为该帖子生成一个唯一的、对 url 友好的字符串。我需要检查数据库,直到我得到一个唯一的。这一切似乎都太过分了??
我看错了吗?或者是否有现成的 API 和工具可以让这变得更轻松、更高效?
我正在使用 PHP / MySQL、Apache。
谢谢
【问题讨论】:
-
这并不意味着更多的查询 - 如果您有一个通过 id 选择的 id,如果您有一个通过 post_url 选择的帖子 url。此外,如果你索引你的 post_url 列,它不会比按 id 选择慢很多。
标签: php mysql mod-rewrite friendly-url