Url重写和查询字符串参数

时间:2011-09-13 19:36:22

标签: asp.net url-rewriting seo

我正在使用UrlReqritingNet在我的asp.net 2.0应用程序中包含url路由。

我想改变

http://mysite.com/book/detail.aspx?id=4

到此:

http://mysite.com/book/a-tale-of-two-cities

这本书存储在一个数据库中,4是本书唯一的主键。

然而,使用此URL我不得不使用书名而不是id来进行数据库查找。我更喜欢使用唯一的ID。

显而易见的解决方案是:

http://mysite.com/book/4

http://mysite.com/book/a-tale-of-two-cities?id=4

考虑到SEO,这些网址中的哪一个是理想的?

由于

2 个答案:

答案 0 :(得分:2)

为什么不完全像StackOverflow在这个页面上那样做呢?

http://mysite.com/book/4/a-tale-of-two-cities?id=4

将ID放在slug之前的URL中。这样一来,如果塞子被切断,你仍然拥有检索该页面所需的一切。

答案 1 :(得分:1)

网址重写的另一个考虑因素是创建“黑客”网址,以便用户可以通过猜测网址来浏览您的网站。

http://mysite.com/books/detail/a-tale-of-two-cities

然后,您可以使用书名来查询您的图书数据表。但是,如果要执行此操作,则需要确保在运行查询之前标题不是SQL注入尝试(使用sql参数)。

从SEO的角度来看,这也应该比在URL中具有名称 - 值对更好