短网址(Short URL) ,顾名思义就是在形式上比较短的
网址。通常用的是asp或者
php转向,在Web 2.0,不得不说,这是一个潮流。已经有许多类似服务,借助短网址您可以用简短的网址替代原来冗长的网址,让使用者可以更容易的分享
链接。
简介
短网址服务,可能很多朋友都已经不再陌生,特别是在微博应用中十分普遍,比如,当我们在腾讯、新浪微博发微博时有时发很长的网址连接,但由于微博只限制140个字,所以微博就自动把您发的长网址给转换成短网址了。
其实,个人认为短网址不一定真的好记,几位数字+字符的组合,甚至很难记忆。但无可否认在微博和手机短信提醒等限制字数的地方来使用短网址,的确是一个不错的方案。
短网址通常使用“比较少字符的网址”+“/”+“代码”,打开短网址网页通常会直接跳转到你要缩短的网址(常见),或者几秒广告后在跳转。比如向
百度短网址可以自定义后缀,有些短网址还可以进行
泛域名解析,十分方便大家使用。
算法原理
算法一
1)将长网址
md5生成32位签名串,分为4段, 每段1个字节(即8位);
2)对这四段循环处理, 取4个字节(32位), 将他看成16进制串与0x3fffffff(30位1)与操作, 即超过30位的忽略处理;
3)这30位分成6段, 每5位的数字作为字母表的索引取得特定
字符, 依次进行获得6位字符串;
4)总的md5串可以获得4个6位串; 取里面的任意一个就可作为这个长url的短url地址;
算法二
把数字和字符组合做一定的
映射,就可以产生唯一的字符串,如第62个组合就是aaaaa9,第63个组合就是aaaaba,再利用洗牌算法,把原字符串打乱后保存,那么对应位置的组合字符串就会是无序的组合。
把长网址存入数据库,取返回的id,找出对应的字符串,例如返回ID为1,那么对应上面的字符串组合就是bbb,同理 ID为2时,字符串组合为bba,依次类推,直至到达62种组合后才会出现重复的可能,所以如果用上面的62个字符,任意取6个字符组合成字符串的话,你的数据存量达到500多亿后才会出现重复的可能。
操作方法
只要你会上网就能实现,找到,然后根据网站相应的提示即可操作。一般操作是在转址站的指定输入框内直接提交你的长
网址即可。
接口介绍
没有特殊的命令,不同的短网址提供者会有不同的
API,这样你就可以利用到自己的网站上。
当然有的网址也没有API的。
常用程序
PHP短网址程序通常采用phurl,Phurl是一个基于PHP和MySQL实现的网址缩短服务,程序才19KB,包括后台程序,只不过是英文的,网上有汉化版的。
还有一种应用较多的是dwz程序,站长论坛里都能下载,安装比较方便,界面效果及功能都要比Phurl好一些,Phurl在上传后对于一些网址会显示提交的不规范,可能和
伪静态的设置有关,而是用dwz程序基本不会碰到此类问题,而且用起来更方便。
还原介绍
大多数程序都带有短网址还原和网址加密功能,直接可以通过短网址地址还原到真实网址,也可以让网址进行加密,访问时需要密码才可以访问。
后辍
大多数短网址程序附带短网址自定义后辍,短网址通常使用“比较少字符的网址”+“/”+“代码”,所以就是代码部分可以自定义