标签:划线 很多 自动 一般来说 字符 意义 转码 domain 需要
短网址在现在的新媒体推广中使用越来越频繁,短网址的使用也给新媒体的运营推广带来了很多便利。但是你们有注意到这些短链接中出现了大写字母吗?在大家的传统意识里,网址都是英文小写为主,那短网址中的大小写有区别吗?
一般来说 url 是大小写无所谓的。但是,短网址服务为了让网址尽可能的短,会尽量增加每一个字符的编码意义,从而增加可以服务的数量。短网址服务的一般原理是,将你的长网址保存在数据库中,并分配一个唯一的 id 给这个网址。然后访问 xxx/ID 时,短网址的服务器自动查询并帮你跳转到对应的原始网址。但是,当用户数量非常多时,即使是一个 short domain 加上一个 id,也会显得太长了。例如 xxx/100000000000 此时就需要对 id 进一步压缩。将 id 的十进制表示转换为其它进制表示,如以 16 进制表示的话,100000000000 可以被压缩为 174876E800,缩短了两位字符。于是,可以人为的使用大小写字母、数字、下划线、连字符等 url 中合法而且不容易引起转码问题的字符,创造出 60+进制甚至 70+进制来。以常见的大小写字母+数字来进行 62 进制压缩,编码方案如下:0~9 还是数字的 0~9。10~35 是英文的 a~z。36~61 是英文的 A~Z。这样一来,100000000000 可以表示为 1L9zO9O,缩短了一半。L 代表 47z 代表 35O 代表 50100000000000 = 1 (62^6) + 47 (62^5) + 9 (62^4) + 35 (62^3) + 50 (62^2) + 9 (62^1) + 50 * (62 ^ 0)由于大小写字母表示不同的数据,所以也就必须做区分了。
标签:划线 很多 自动 一般来说 字符 意义 转码 domain 需要
原文地址:http://blog.51cto.com/14136402/2331855