代码之家  ›  专栏  ›  技术社区  ›  Dofs

tiny url是如何工作的

  •  5
  • Dofs  · 技术社区  · 15 年前

    我一直在想小网址是怎么工作的。

    我想为我的站点开发一些类似的东西,但是作为大多数人,我使用guid作为id。当创建一个对象时,我应该生成一个10个字符的随机字符串作为公共id,还是有更聪明的方法?

    旧url示例:www.mysite.com/default.aspx?userId={id}

    新url示例:www.mysite.com/pwzd4r9niy

    2 回复  |  直到 15 年前
        1
  •  5
  •   Pekka    15 年前

    您可以为此使用任何类型的随机字符串生成器或GUID。我认为没有比这更聪明的方法了(不过,Palantir提供了一个很好的替代方案,对传入的URL进行哈希处理。)

    剩下的相对简单:保留一个包含id和目标url的数据库表;当一个请求进来时,查找ID并执行 header

    this blog post .

    可悲的是,他走了!它用来创建“短”网址,比如

    http://evilURL.com/donkey_porn-shotguns/cracking-virus-exploit
    

    这是唯一的URL重定向服务 有价值的。:)

    http://to 是人类已知的最短的重定向服务(而且,我认为是最短的web URL)。

        2
  •  0
  •   Palantir    15 年前

    把整个字符串散列到一个合理的长度。

    推荐文章