长网址转换短网址

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了长网址转换短网址相关的知识,希望对你有一定的参考价值。

可以用955网址转换网站

以下是原理:http://blog.sina.com.cn/s/blog_65db99840100lg4n.html(转)

----------------“今天看到新闻说谷歌的网址缩短服务(http://goo.gl/)向公众开放了,就想看看这短地址是怎么一回事,因为玩新浪微博的时候也经常碰到这个东西。

用我的博客地址http://blog.sina.com.cn/bluemonster0808生成的短地址是goo.gl/HdAU(值得注意的是同一个长地址每次生成的短地址都不一样,谷歌不加上重复网址判定可能主要是考虑到时间的问题吧。目前是4位长度,由A~Z、a~z、0~9组成,只能容纳624,一千多万个地址,未来应该会增加长度) ”

ADDED 20101002

最新发现,现在同一个长地址每次生成的短地址都是一样的了,谷歌增加了重复判定。比如http://blog.sina.com.cn/bluemonster0808现在每次生成的都是http://goo.gl/PiOA,但是之前的http://goo.gl/HdAU仍然可以使用

通过抓包发现,首先是DNS解析goo.gl,得到74.125.153.138、74.125.153.102等google的服务器地址。然后向其中的一个发送HTTP GET请求,查询HdAU,服务器随之返回一个301页面跳转回应,告知浏览器跳转到对应的长地址http://blog.sina.com.cn/bluemonster0808。原理挺简单的,主要是一个长地址到短地址的转换算法和一个数据库存储、查询。但是要想做的稳定好用应该还是要花很多功夫的。

 

有一个发现,用IE内核浏览器(我试了IE8和搜狗),在访问一个网址前,360都会插手,都要先DNS解析qurl.f.360.cn这个网址,发现它是qurl.qh-lb.com的别名,ip是221.194.173.11和221.194.173.13,然后向360的服务器发送post消息,post /check_outchain.php,内容很多,但是不明白是什么意思。360的服务器只返回一个200 OK,然后服务器主动断开连接。这难道就是360上网安全保护么?我表示有点怀疑,因为如果要检查网址的合法性,只需要把这个网址报告给360的服务器让其检查即可,检查完了360应该返回一个正确的消息(当然,如果网址合法的话360服务器直接关闭连接也是合理之举),错误的话返回一个失败的消息。但是观察post包,里面并没有我要访问的网址信息,有很多我并不知道什么意思的内容。

还有一个发现是搜狗浏览器的代理果然牛逼啊,用搜狗访问google的短网址,不是从谷歌的服务器上直接获取对应的长地址的,而是经过118.228.148.62这个代理服务器中转得来。到ip138上查询118.228.148.62是搜狐的服务器。

ADDED 20101211

网上看到有人自己动手做了一个网址缩短的东西http://www.evlos.org/2009/12/20/finished-my-own-urlshort/,虽然挂掉了,但是值得一看

以上是关于长网址转换短网址的主要内容,如果未能解决你的问题,请参考以下文章

长链接转短链接(短网址)

3款超赞的长网址转t.cn短网址工具(接口)推荐

短链系统设计-用户自定义短链

短网址

为啥有的URL长,有的短?

怎么把链接变短