我注意到许多博客使用如下所示的 URL:
http://www.hanselman.com/blog/VirtualCamaraderieAPersistentVideoPortalForTheRemoteWorker.aspx
我假设这样做是为了优化搜索引擎。
这是如何从底层数据模型中读取的?你真的会搜索
VirtualCamaraderieAPersistentVideoPortalForTheRemoteWorker
在数据库中?
如果是这样,描述是如何管理的?如果它是一个 key ,那么在不破坏网络链接的情况下,它是否是一旦创建就永远不能更改的规则?
最佳答案
您是正确的,它是为了搜索引擎优化而完成的。但是,如果您使用破折号或下划线分隔各个单词,效果最佳。
这些 SE 友好的 url 部分通常称为 slugs 或 url slugs。 slug 在您的应用程序中必须是唯一的,通常创建或检查它们的函数必须考虑到这一点。
就像其他任何事情一样,有多种方法可以实现这样的事情。通常,您存储有关数据库项目的文本字符串,例如。文章标题。如果你不想存储它,你可以在加载时动态地将它转换成 url slug,或者你可以在插入/更新时保存真实的标题和 url slug,并在加载时使用 slug 作为你的数据库选择标准相关页面。
如果您希望自己的应用 super 健壮,您可以自动保存 slug 历史记录,并在 slug 发生更改时生成“301 Moved Permanently” header 。
关于c# - 管理描述性 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1183006/