在之前我曾经说过,为了实现在互联网上构建超链接文档系统的设想,蒂姆·伯纳斯 - 李发明了万维网,使用 HTTP 协议传输“超文本”,让全世界的人都能够自由地共享信息。

“超文本”里含有“超链接”,可以从一个“超文本”跳跃到另一个“超文本”,对线性结构的传统文档是一个根本性的变革。

能够使用“超链接”在网络上任意地跳转也是万维网的一个关键特性。它把分散在世界各地的文档连接在一起,形成了复杂的网状结构,用户可以在查看时随意点击链接、转换页面。再加上浏览器又提供了“前进”“后退”“书签”等辅助功能,让用户在文档间跳转时更加方便,有了更多的主动性和交互性。

那么,点击页面“链接”时的跳转是怎样的呢?具体一点,比如在 Nginx 的主页上点了一下“download”链接,会发生什么呢?

结合之前的课程,稍微思考一下你就能得到答案:浏览器首先要解析链接文字里的 URI。

http://nginx.org/en/download.html

再用这个 URI 发起一个新的 HTTP 请求,获取响应报文后就会切换显示内容,渲染出新 URI 指向的页面。

这样的跳转动作是由浏览器的使用者主动发起的,可以称为“主动跳转”,但还有一类跳转是由服务器来发起的,浏览器使用者无法控制,相对地就可以称为“被动跳转”,这在 HTTP 协议里有个专门的名词,叫做“重定向”(Redirection)。

重定向的过程

18 | 四通八达:HTTP的重定向和跳转相关推荐

  1. 重定向与跳转的区别 .

    重定向说白了就是通过各种的方法将各种网络请求重新定个方向转到其它位置(如:网页重定向.域名的重定向.路由选择的变化也是对数据报文经由路径的一种重定向). 我们在网站建设中,时常会遇到需要网页重定向的情 ...

  2. android 服务器返回302,Android WebView 内处理302重定向不跳转的解决

    最近项目中Webview加载第三方的具有302的重定向,但是却发现却没有重新跳转.最后发现问题如下: public boolean shouldOverrideUrlLoading(WebView v ...

  3. jQuery重定向如何跳转到另一个网页

    如何在jQuery中跳转到另外一个网页HTML. 其实下面我列举的几种方法.我们可以利用http的重定向来跳转 window.location.replace("https://blog.c ...

  4. 解决请求重定向无法跳转以及页面无限循环跳转

    问题1:请求重定向无法跳转 原因:由于前台使用了一些框架,部分组件是利用的iframe来写页面的,导致后台对请求进行重定向时,前台页面无法跳转,而是在对镶嵌iframe中的页面进行跳转,无法实现在浏览 ...

  5. php重定向error,php重定向后跳转不了

    PHP中重定向网页跳转页面的方法有三种,下面为大家详细介绍一下. 第一种:利用header()函数进行重定向,这也是我用的较多的.(注意!location和":"之间不能有空格,否 ...

  6. php 重定向不刷新页面,php重定向后跳转不了

    PHP中重定向网页跳转页面的方法有三种,下面为大家详细介绍一下. 第一种:利用header()函数进行重定向,这也是我用的较多的.(注意!location和":"之间不能有空格,否 ...

  7. HTTP第16讲——HTTP的重定向和跳转

    背景 "超文本"里含有"超链接",可以从一个"超文本"跳跃到另一个"超文本",对线性结构的传统文档是一个根本性的变革. ...

  8. java过滤器重定向_解决ajax请求过滤器重定向不跳转 (过滤器)

    最近写的一个servlet过滤器,用于拦截请求,判断用户是否登录. 写好后发现一个问题,当我直接在浏览器地址栏里输入地址,可以跳转页面:当点击按钮时,过滤器代码正常执行,但是页面没有跳转:是因为按钮都 ...

  9. 统计学常犯的18个错误,请务必跳过这些坑!

    来源:知乎 本文约为2400字,建议阅读6分钟 本文总结统计学中经常犯的错误,知道这些常识,可以在与别人"嘴炮"时更具专业性. 1. 变量之间关系可以分为两类: 函数关系:反映了事 ...

最新文章

  1. puppet 类、模块
  2. 关于VC向导生成的COM的注册与反注册
  3. GridView行号大集合
  4. 实体词典 情感词典_基于词典的情感分析——简单实例
  5. php框架大全图解_PHP框架汇总 - 鱼煎的个人空间 - OSCHINA - 中文开源技术交流社区...
  6. 更新性能服务器图片介绍,图文并茂 讲述企业版Linux性能发展史
  7. 树莓派python编程小车_树莓派小车教程(三)——软件代码
  8. 简单游戏(easygame)
  9. 怎么在win7上安装AIR780E的USB驱动
  10. c语言烟花代码devc,C语言烟花程序
  11. 360电脑网速怎么测试软件,360怎么测试网速,360如何测试网速
  12. W5500 dns域名解析
  13. 【JZOJ1320】拯救奶牛
  14. 传统文化中,沉香对养身、养心、养神的功效
  15. linux安装perf工具
  16. Java自学第6期——Collection、Map、迭代器、泛型、可变参数、集合工具类、集合数据结构、Debug
  17. KiCad快速入门学习笔记:层次图和设计规则使用
  18. 入门级Python代码实时获取股市数据
  19. 【小知识】linux hash命令
  20. 网站是怎么了,一直http/1.1 302 found 浏览器假死了一样

热门文章

  1. Android聊天软件的开发(四)--通讯录
  2. VBA 将Excel工作簿中所有表格进行一键排版
  3. ardupilot 如何快速下载代码
  4. 15+ JS简写骚操作,让你的代码“秀”起来
  5. 希雷伺服源码原理图/PCB/BOM/技文档TMS320F28 希雷伺服,全套资料 , 主控芯片,TMS320F28034PNT,方案有显示,驱动
  6. 一些免费的api接口
  7. ajax then fail done,Jquery $when done then的用法详解
  8. MAC下快速查看图片的尺寸大小,尺寸
  9. ARM + Linux + QT 智能停车收费系统
  10. sharepoint同步本地 linux,SharePoint迁移工具