考虑将短网址结构映射到长网址结构的方法

时间:2011-10-14 01:37:32

标签: c# html url-shortener

这是我在这里的第一个问题,为我的搞笑无知道歉。

我在C#中有一个网站,目前使用根文件夹和查询字符串的混合来格式化其页面。每个页面都有一个唯一的ID,该ID依赖于其中一个根文件夹。

例如: www.mywebsite.com/files/cats/index.aspx?p=100000和www.mywebsite.com/files/ducks/index.aspx?p=100001,其中P值是唯一的整数,www.mywebsite.com /files/cats/index.aspx?p=100001不起作用。

我想要做的是使用一个映射到这些值的短URL,而不必使用数据库。

例如,转到http://myw.eb/cat/100000会映射到http://www.mywebsite.com/files/cats/index.aspx?p=100000

有什么方法可以做到这一点,还是我最好使用其他方法?我不喜欢散列唯一ID的想法,因为我认为它是加倍的。

任何帮助都会令人难以置信。

3 个答案:

答案 0 :(得分:3)

您可以在IIS7中使用URL Rewrite Module

在IIS6中,您可以使用ISAPIRewrite。

答案 1 :(得分:0)

ASP.Net MVC路由是Url路径部分的另一种方法(如果你愿意做更多的工作)。

附注:获得简短有用的域名可能很难,修复路径的路径部分很容易。

答案 2 :(得分:0)

它总是直接映射吗?也就是说,http://myw.eb/<type>/<id>总是映射到http://myw.eb/files/<type>s/index.aspx?p=<id>,其中是“duck”或“cat”或者其他什么,是整数吗?

如果是这样,那么您可以创建一个简单的脚本来解析短网址并进行必要的替换以生成长网址。无需数据库。我不知道fardjad提到的URL Rewrite Module是否支持它,但我怀疑它是。