几种常用网址跳转方法的测试及分析

2022-04-29 22:13张龙赵广超朱林刘强张文骞
电脑知识与技术 2022年4期
关键词:重定向

张龙 赵广超 朱林 刘强 张文骞

摘要:在网站升级改造,网站网址变更,而用户访问网站的地址保持不变时,需要对网站地址进行跳转处理,文章主要介绍了网址跳转的几种常见方法在网络中的实际应用及分析测试。

关键词:网址跳转;重定向;反向代理;HTML

中图分类号:TP311     文献标识码:A

文章编号:1009-3044(2022)04-0046-02

1 引言

网站建设完成后,网址变更、域名改变等情况时有发生,用户大多熟知旧网址,为能够提高用户体验,经常用网址跳转来处理。网站原IP地址为x.x.3.8,网站变更后的IP地址为x.x.6.50.需要实现在用户输入原IP地址时,自动跳转到新网站并不影响用户的上网体验。

2 网址跳转介绍

网址跳转,就是通过一个网址跳转到另一个网址中去,比如需要在输入A网址的情况下,打开B网址的网站,那么A网址到B网址之间的跳转就是网址跳转(此方法也常用于网站的404页面)。网址跳转的主要作用是当域名或网址变更时,可以使用这种方式将用户引到正确的网页上去。网址跳转的实现有很多种方法,结合实际工作,主要整理了以下三种常见网址跳转方法。

2.1 HTML页面代码跳转

在HTML中,通常使用meta标签和Javascript语言两种方法来实现网址跳转。使用meta标签进行页面跳转较为简单,此方法可以定义页面跳转的时间以及其他参数;使用Javascript语言更加灵活,可以结合更多的其他功能,但可能因为浏览器的不同产生不一样的效果,对用户使用造成不便[1]。

2.2 网址重定向

URL重定向(URL redirection,或称网址重定向或网域名称转址)根据HTTP Response Code不同主要分为301(永久重定向)和302(暂时重定向)两种。其中永久重定向技术又称为301跳转,指的是终端用户向服务器发送请求后服务器控制返回HTTP报文中状态码,表示将本页面永久转移到其他页面。网站采用301重定向技术对搜索引擎较为友好,一般场景下的网站转移建议采用301重定向技术。

在基于Windows Server的服务器上,可以通过配置IIS(Internet Information System)实现301重定向;在基于Unix的系统上主要采用Apache或者Nginx实现HTTP网站服务,通过修改配置文件的方法可以实现301重定向跳转。

302重定向技术在实现上与301重定向技术相似,只是在应用场景上302重定向技术主要适用于网站暂时重定向到其他页面。由于302重定向技术对搜索引擎不友好,可能造成干扰搜索引擎对收录网站排名的情况,同时302重定向在安全性上存在缺陷,容易造成URL劫持攻击。

2.3 反向代理

代理技術主要分为正向代理、反向代理和透明代理,其中正向代理主要用于突破访问限制、提高访问速度和隐藏客户端IP地址等,反向代理主要用于隐藏服务器IP、负载均衡等,透明代理主要用于用户行为监控等功能。

反向代理在实现网站跳转功能方面,其主要原理如图1所示,代理服务器在用户与网站服务器通信中间发挥作用,在用户看来代理服务器即为网站服务器,代理服务器可以根据使用者指定的策略从不同的网站服务器取得内容[2]。在Windows和类Unix系统中可以通过修改WEB服务器的配置文件实现反向代理功能[3]。

3 网址跳转在网络中的实现

3.1 HTML页面跳转的实现

在Windows或Linux系统中,可通过修改网站主目录下index.html文件内容来实现,如下图2中第5行代码所示。

meta元素用于指定网页的描述,并提供HTML文档的元数据,不会显示在客户端,但是会被浏览器解析。http-equiv表示把content属性关联到HTTP头部,其中http-equiv="refresh"表示自动刷新,content=0表示设置时间为0秒,即不用等待直接跳转到新页面,url=http://x.x.6.50表示跳转到的目的网址。

3.2 网址重定向方法的实现

3.2.1 Windows下网址重定向的实现

对于使用Windows操作系统的用户,可以使用系统中IIS管理单元配置301重定向功能。

1)从计算机管理打开IIS管理单元,进入需要配置的站点,点击右键在选择快捷菜单中的选择“属性”命令。

2)在弹出对话框中,找到“链接到资源时的内容来源”,选择“重定向到URL”,在下面的文本框中输入要跳转到的页面。

3)同时将“客户端定向到”下面的“资源的永久重定向”复选框中。

4)点击“应用”按钮。

3.2.2 Linux下网址重定向的实现

使用Linux的用户可以使用如下方法实现网址重定向。在Linux下修改Nginx的配置文件,一般位于“/usr/local/nginx/conf/nginx.conf”的路径。[4]

3.3 反向代理方法的实现

在Nginx服务器上配置内置自带 proxy_pass模块实现反向代理功能,配置文件模板如下[5]。

4 网址跳转不同方法的效果分析及测试

为了能够更好地提升用户体验,选择一种传输效率最高并且对用户影响最小的方法,通过抓取数据包传输过程,对以上三种方法进行了测试和效果分析。为了使测试效果更加真实,部署了一台虚拟化服务器,操作系统(Linux)和HTTP服务软件(Nginx)与网站主页服务器一致,IP地址为x.x.3.15。在该服务器上依次做了这三种网址跳转测试,在客户端x.x.6.24的命令提示符下运行Wireshark命令行软件对三种方法的网站访问速度分别进行抓包分析,通过进行多次测试,取平均值,如图5、图6、图7所示:

从测试结果图中可以发现,HTML页面跳转的方法传输20个左右的数据包,网址重定向和反向代理方法传输10个左右数据包。由此可见,HTML页面跳转方法的效率相对较低,网址重定向和反向代理两种方法相差无几。由于反向代理的方法更适合拥有多个WEB服务器或者反向代理服务器的大型网站及数据中心,主要用于降低原始WEB服务器的负载,如百度网站等,而文中的网站只需要一台服务器即可,综合考虑选择网址重定向的方法进行网址转发。

5 结束语

针对网址变更本文对网址跳转的三种方法进行了测试及效果分析,经过一系列的测试分析,选择最优的方案网址重定向进行网址跳转,主要采用Linux下的网址重定向方法作为主要工具,Windows下IIS中的重定向方法作为冷备份,确保遇到网络故障时能够快速响应,忽略网址跳转的影响。该方法有效降低了网址变更对用户的影响,减少了不必要的工作量,使网站访问效率最大化。

参考文献:

[1] 明日科技.HTML5从入门到精通[M].3版.北京:清华大学出版社,2019.

[2] 王力,汤永全.Nginx实战:基于Lua语言的配置、开发与架构详解[M].北京:电子工业出版社,2019.

[3] 苗泽.Nginx高性能Web服务器详解[M].北京:电子工业出版社,2013.

[4]  Ngnix中文文档.http://www.ngnix.cn/doc/standard/httpproxy.html

[5] 刘遄.Linux就该这么学[M].北京:人民邮电出版社,2017.

收稿日期:2021-08-26

作者简介:张龙(1988—),男,山东潍坊人,本科,主要研究方向为网络运维与管理;赵广超(1983—),男,河南舞钢人,硕士,工程师,主要方向为网络运维与管理;朱林(1985—),男,河南洛阳人,本科,工程师,主要研究方向为网络运维与管理;刘强(1993—),男,新疆阿勒泰人,本科,助理工程师,主要研究方向为网络安全;张文骞(1998—),男,河南南阳人,本科,助理工程师,主要研究方向为网络安全。

猜你喜欢
重定向
基于数字平台的信息失范与治理:全球趋势与中国经验*
人工智能在药物研发中的应用专利技术分析
TD-LTE CSFB实现方案分析
TD-LTE网络基于PS业务的重定向过程研究
解决安卓文件夹乱象
重复压裂裂缝重定向的措施研究
利用JavaScript重定向跳转作弊技术的研究
基于马氏体重定向的铁磁形状记忆合金本构理论分析
JSF2.0中RESTful导航方式的探究