时间:2012-06-26 13:52:33 作者:不思议游戏 浏览量:109
常用的域名重定向方式有:A、301重定向,B、302重定向,C、META标签刷新。
301重定向代表永久性转移(Permanently Moved)。
302重定向代表暂时性转移(Temporarily Moved)。
META标签刷新在2000年前比较流行,不过现在已很少见。其具体是通过网页中的META标签,设定相应的跳转地址,在特定时间后重定向到新的网页。
301重定向和302重定向的区别主要表现在搜索引擎爬取网络链接的处理上,对于网民来说,两者的效果都是将访问的地址指向到另外一个地址。
在301重定向和302重定向中,网站服务器都会通过返回的HTTP数据头中的Location段中给出相应的跳转地址。所以在了解了短链接实现的原理以后,想获取到短链接地址所指向的真实地址,只需对短链接域名的重定向进行检测即可。实际上,我们可以通过多种方法实现获取短链接指向的地址。
网上有一些网站可以提供域名重定向检测的网站,可以通过此类网站获取到短链接地址指向的真实域名地址,如http://www.longurl.org/.我们可以通过调用该网站提供的API接口获取相关信息,我们使用腾讯微博生成的短链接地址http://url.cn/0DlZLg为例,提交URL地址http://api.longurl.org/v2/expand?url=http://url.cn/0DlZLg,返回的结果如图1所示。
图1这里的结果是该短链接地址跳转的地址是百度的首页。
当然,调用其他网站提供的接口反馈的结果是经过加工处理的,不能看到服务器反馈回来的数据报文。那么我们自己构造一个工具实现对短链接地址的查看,构造PHP代码如下图2所示:
图2以上代码的作用是接收用户输入的短链接地址,并发送相应的HTTP请求,并将服务端返回的数据信息进行显示。将以上代码保存在安装有PHP的环境中,并保存为CheckTinyUrl.php,使用方法是在命令行模式下执行命令“php CheckTinyUrl.php短链接地址”,这里使用新浪微博中的短链接进行测试,测试结果如下图3所示。
图3从返回的结果中可以发现,HTTP返回的状态码为302,并且重定向的地址在Location段中,正是我们之前测试输入的瑞星新闻的地址。
同样,也可以通过其他程序设计语言编写相应的短链接重定向检测工具,方便应用在未安装PHP语言环境的机器中,实现的原理都是通过提交数据包并接收返回的HTTP数据报文头信息,查看到相应的重定向地址,如下图4所示。
图4现在,越来越多的人开通了自己的微博,网民必须提高警惕,尤其是针对第三方授权应用,建议获取短链接重定向的完整URL地址后再安全浏览。并安装安全防护软件,对可能存在的恶意网址、恶意钓鱼地址、恶意XSS跨站脚本攻击及网马攻击等行为进行有效拦截。