网站页面自动跳转实现方法PHP、JSP(上)

 更新时间:2010年08月01日 14:30:14   作者:  
自动转向,也叫自动重定向。自动跳转,指当访问用户登陆到某网站时,自动将用户转向其它网页地址的一种技术。转向的网页地址可以是网站内的其它网页,也可以是其它网站。
通常情况下,浏览器会收到一个网页,该页面含有自动加载一其它网页的代码。该页面有可能在服务器端被转换,这样的话,浏览器只收到一个页面,而自动转向往往意味着浏览器收到的页面具有自动将访问用户送至其它页面的功能。
对自动转向技术的合理应用包括:将用户转向到指定浏览器的网页版本;当网站的域名变更或删除后将人们转向到新域名下,等等。但现在这种技术却往往被搜索引擎优化人士用来作为提高网站的搜索引擎排名的一种手段。例如,先专门针对搜索引擎做一个高度优化的网页,也就是我们通常所说的“桥页”,然后把这个网页提交给搜索引擎来获得好的排名。但是,当搜索用户通过搜索引擎的搜索结果列表点击该网页列表进入后,将被自动转向到一个用户本来无意去访问的网站地址。搜索引擎常常认为自动转向的网页是对读者的误导,所以它会对这种网页或网站施以惩戒,不过对一些自动转向方法它目前还无法自动检测出来。
Meta Refresh Tag自动转向法
由于搜索引擎能够读取HTML,而Meta&nbsptags也是HTML,所以对于这种自动转向法,搜索引擎能够自动检测出来。因而无论网站的转向出于什么目的,都很容易被搜索引擎视做对读者的误导而受到惩罚。不过,如果跳转延迟时间设置合适,搜索引擎就不会视之为作弊。
页面定时刷新元标识(Meta Refresh Tag)只能放在HTML代码的<HEAD>区里。如下所示:
代码
复制代码 代码如下:
<meta http-equiv="refresh" content="5" url=https://www.jb51.net/">


其中的“5”是告诉浏览器在页面加载5秒钟后自动跳转到page.htm这个页面。这种方法常可以在论坛中见到。如果在论坛上发信息,先会看到一个确认页面,几秒后会自动重新跳转回当前的论坛页面中。
从搜索引擎优化的角度出发,一般不希望自动转向有延迟。不过,如果是用Meta Refresh标识进行转向,一定要注意把延迟时间设定成至少10秒以上。
“javascript”自动转向法
由于不能解析javascript,所以搜索引擎无法察觉(自动检测到)用javascript脚本进行的自动转向。javascript自动重定向脚本可以放在网页的任何位置上,如果要求立即跳转,则可以将其放入网页源码的<head>区内的最上面。用javascript实现跳转的范例如下:
方案1:
代码
复制代码 代码如下:

<script language="javascript">
<!--
location.replace("https://www.jb51.net");
-->
</script>

用javascript实现自动重定向的好处在于:用户所访问的目标URL不会保留在用户浏览器的历史记录中,如果用户按返回按钮返回,则将回到跳转前的网页,而不是包含javascript自动重定向脚本的跳转页面,所以不会出现当用户点击返回按钮后返回至重定向页,然后该页自动跳转到用户本来想离开的那个页面的尴尬情形。
如果需要,可以把javascript自动重定向脚本存在一个外部文件中,并通过下面的命令行来加载,其中“filename.js”是该外部文件的路径和文件名:
代码
<script language="javascript" src="filename.js"></script>

注意:若需实现即刻转向,或不希望人们看到转向前的那个页面,一般常用javascript脚本实现。在这种情况下应将javascript脚本放入HTML源码的<HEAD>区中。
表单(FORM)自动转向法
搜索引擎的“爬行”程序是不会填写表单的,所以它们也不会注意到提交表单,因而可以利用表单来实现自动转向(重定向)而不让搜索引擎察觉。
对于表单,人们往往很少意识到:表单的Action参数中包含的URL地址其实正是浏览器向服务器所请求的URL。浏览器将会通过向请求的URL地址增加一些格式为name=value的参数给予它以特殊的对待。在什么都没有的情况下,浏览器仍旧会为该URL安排请求至服务器。
用javascript脚本可让页面开始加载时即提交表单。下面是一个用javascript实现表单自动提交,以及提交表单的范例:
代码
复制代码 代码如下:

<script language="javascript"><!--document.myform.submit() //--> </script>
<form name="myform" action="https://www.jb51.net" method="get"></form>

相关文章

  • ES5 模拟 ES6 的 Symbol 实现私有成员功能示例

    ES5 模拟 ES6 的 Symbol 实现私有成员功能示例

    这篇文章主要介绍了ES5 模拟 ES6 的 Symbol 实现私有成员功能,结合实例形式分析了ES5 模拟 ES6 的 Symbol 实现私有成员功能相关原理、实现方法与操作注意事项,需要的朋友可以参考下
    2020-05-05
  • JavaScript数据结构之链表各种操作详解

    JavaScript数据结构之链表各种操作详解

    数据结构是一种有效处理大量数据的手段,了解它的结构和组成为我们提供了更有效的工具来设计与某些问题相关的产品。这次我们将进行链表介绍,回顾它的特点和用途
    2022-10-10
  • MQTT.js 入门使用教程

    MQTT.js 入门使用教程

    MQTT.js 是一个开源的 MQTT 协议的客户端库,使用 JavaScript 编写,主要用于 Node.js 和 浏览器环境中,这篇文章主要介绍了MQTT.js 入门教程,需要的朋友可以参考下
    2023-04-04
  • JavaScript手机振动API

    JavaScript手机振动API

    现代浏览器里提供的新的API越来越倾向于移动手机应用,这篇文章主要为大家详细介绍了JavaScript手机振动API的相关资料,需要的朋友可以参考下
    2016-06-06
  • 用纯JS实现二级菜单效果

    用纯JS实现二级菜单效果

    这篇文章主要为大家详细介绍了用纯JS实现二级菜单效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-04-04
  • js实现砖头在页面拖拉效果

    js实现砖头在页面拖拉效果

    这篇文章主要为大家详细介绍了js实现砖头在页面拖拉效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-11-11
  • JavaScript插件Tab选项卡效果

    JavaScript插件Tab选项卡效果

    这篇文章主要为大家详细介绍了JavaScript插件Tab选项卡效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-11-11
  • 将字符串中由空格隔开的每个单词首字母大写

    将字符串中由空格隔开的每个单词首字母大写

    这篇文章主要介绍了如何将字符串中的每个单词的首字母变为大写,需要的朋友可以参考下
    2014-04-04
  • JS实现随机生成10个手机号的方法示例

    JS实现随机生成10个手机号的方法示例

    这篇文章主要介绍了JS实现随机生成10个手机号的方法,涉及javascript数值运算与随机数操作相关使用技巧,需要的朋友可以参考下
    2018-12-12
  • ES6入门教程之let、const的使用方法

    ES6入门教程之let、const的使用方法

    这篇文章主要给大家介绍了关于ES6入门教程之let、const使用的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用ES6具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-04-04

最新评论