重定向

301,302,303,307重定向区别

烈酒焚心 提交于 2019-11-27 21:41:38
规范中: 301是永久重定向,之后的请求中客户端应该使用新的URI(即,可以被浏览器缓存),对于POST/PUT/DELETE请求 客户端不应该自动的重定向 302是由于未知原因重定向,之后的请求中客户端不应该用新的URI,对于POST/PUT/DELETE请求 客户端不应该自动重定向 303是由于未知原因重定向,之后的请求中客户端不应该用新的URI,对于POST/PUT/DELETE请求 客户端应该使用GET请求来替代 307是临时重定向,之后资源可能会回到这个位置,之后的请求中客户端应该使用旧的URI,对于POST/PUT/DELETE请求 客户端不应该自动重定向 许多浏览器客户端没有遵循规范,而是当作303来处理的。 303和307是在HTTP1.1规范中添加的用来的和302区分开的。 302 Found 303 See Other 307 Temporary Redirect 来源: https://www.cnblogs.com/eret9616/p/11378677.html

Zblog全站301重定向

倖福魔咒の 提交于 2019-11-27 21:37:35
1、静态管理中心-ReWrite规则,创建.htaccess文件 创建好在FTP根目录可以看到(FTP看不到的情况是因为隐藏起来了,显示隐藏文件就行了) 2、.htaccess文件创建好在FTP根目录里 3、打开htaccess文件,在RewriteEngine On下面加两句代码(域名换成你的哦) RewriteCond %{HTTP_HOST} ^xiaochunblog.com$ [NC] RewriteRule ^(.*)$ http://www.xiaochunblog.com/$1 [L,R=301] 4、然后上传到根目录,Zblog全站301重定向设置完成。 来源: https://www.cnblogs.com/xiaochunblog/p/11378371.html

返回结果的 HTTP 状态码

笑着哭i 提交于 2019-11-27 21:29:03
HTTP 状态码负责表示客户端 HTTP 请求的返回结果、标记服务器端 的处理是否正常、通知出现的错误等工作。 1.状态码告知从服务器端返回的请求结果 状态码的职责是当客户端向服务器端发送请求时,描述返回的请求结 果。借助状态码,用户可以知道服务器端是正常处理了请求,还是出 现了错误。 2. 2XX 成功 2XX 的响应结果表明请求被正常处理了。 204 No Content 无内容 该状态码代表服务器接收的请求已成功处理,但在返回的响应报文中 不含实体的主体部分。另外,也不允许返回任何实体的主体。比如, 当从浏览器发出请求处理后,返回 204 响应,那么浏览器显示的页面 不发生更新。 一般在只需要从客户端往服务器发送信息,而对客户端不需要发送新信息内容的情况下使用 206 Partial Content 部分内容 该状态码表示客户端进行了范围请求,而服务器成功执行了这部分的 GET 请求。响应报文中包含由 Content-Range 指定范围的实体内容。 3. 3XX 重定向 3XX 响应结果表明浏览器需要执行某些特殊的处理以正确处理请 求。 301 Moved Permanently 永久重定向 永久性重定向。该状态码表示请求的资源已被分配了新的 URI,以后 应使用资源现在所指的 URI。也就是说,如果已经把资源对应的 URI 保存为书签了,这时应该按 Location

【深入HTTP协议】

自古美人都是妖i 提交于 2019-11-27 20:56:16
目录 HTTP 请求 HTTP 响应 "HTTP是(Hyper Text Transfer Protocol)超文本传输协议的缩写. HTTP的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC. RFC 1945定义了HTTP/1.0版本,其中最著名的就是RFC 2616,RFC 2616定义了今天普遍使用一个版本——HTTP 1.1 -------> HTTP协议(Hyper Text Transfer Protocol)超文本传输协议是用于从WWW服务器传输超文本到本地浏览器的传送协议. 它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等. @ HTTP响应模型 · HTTP协议永远都是客户端发起请求,服务器回送响应,如下图: 这样就限制了使用HTTP协议,无法实现在客户端没有发起请求的时候,服务器将消息推送给客户端. HTTP工作流程 · 一次HTTP操作称为一个事务 ,其工作过程可分为四步: 首先客户机与服务器需要建立连接。只要单击某个超级链接,HTTP的工作开始. 建立连接后,客户机发送一个请求给服务器

HTTP协议相关面试题

末鹿安然 提交于 2019-11-27 20:54:18
http请求由三部分组成,分别是:请求行、消息报头、请求正文 HTTP(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式,HTTP1.1版本中给出一种持续连接的机制,绝大多数的Web开发,都是构建在HTTP协议之上的Web应用。 1、常用的HTTP方法有哪些? GET: 用于请求访问已经被 URI(统一资源标识符)识别的资源,可以通过URL传参给服务器。 POST: 用于传输信息给服务器,主要功能与 GET方法类似,但一般推荐使用POST方式。 PUT: 传输文件,报文主体中包含文件内容,保存到对应 URI位置。 HEAD: 获得报文首部,与 GET方法类似,只是不返回报文主体,一般用于验证URI是否有效。 DELETE: 删除文件,与 PUT方法相反,删除对应URI位置的文件。 OPTIONS: 查询相应 URI支持的HTTP方法。 2、GET方法与POST方法的区别 区别一: get重点在从服务器上获取资源,post重点在向服务器发送数据; 区别二: get传输数据是通过URL请求,以field(字段)= value的形式,置于URL后,并用"?"连接,多个请求数据间用"&"连接,如http://127.0.0.1/Test/login.action?name=admin&password=admin,这个过程用户是可见的;

接口请求返回状态码总结

不问归期 提交于 2019-11-27 20:52:52
接口请求返回状态码总结 前端在调用接口时都要关注接口返回给我们的状态码,之前只是大概的了解比如404是前端的错,可能是路径错误等,300+可能是重定向了,500以上是服务端或者服务器的错误,并没有一个很好的总结。今天中午看群里有人问这问题,就搜集对比整理了一下,如下: 1xx - 信息提示 这些状态代码表示临时的响应。客户端在收到常规响应之前,应准备接收一个或多个 1xx 响应。 · 100 - Continue 初始的请求已经接受,客户应当继续发送请求的其余部分。 · 101 - Switching Protocols 服务器将遵从客户的请求转换到另外一种协议 2xx - 成功 这类状态代码表明服务器成功地接受了客户端请求。 · 200 - OK 一切正常,对GET和POST请求的应答文档跟在后面。 · 201 - Created 服务器已经创建了文档,Location头给出了它的URL。 · 202 - Accepted 已经接受请求,但处理尚未完成。 · 203 - Non-Authoritative Information 文档已经正常地返回,但一些应答头可能不正确,因为使用的是文档的拷贝,非权威性信息。 · 204 - No Content 没有新文档,浏览器应该继续显示原来的文档。如果用户定期地刷新页面,而Servlet可以确定用户文档足够新,这个状态代码是很有用的。

SSO单点登录、跨域重定向、跨域设置Cookie、京东单点登录实例分析

自古美人都是妖i 提交于 2019-11-27 20:42:27
最近在研究SSO单点登录技术,其中有一种就是通过js的跨域设置cookie来达到单点登录目的的,下面就已京东商城为例来解释下跨域设置cookie的过程 涉及的关键知识点: 1、 jQuery ajax跨域重定向,要理ajax解跨域重定向,先要了解浏览器对重定向的处理。正常我们请求一个地址,如果server返回302,那么浏览器会再发起 一次重定向后的http请求;用jquery ajax发起一次异步请求,server返回302,如果重定后url的域名跟ajax请求的域名是同一个域名的话,浏览器会再发起一次重定向后的 http请求,请求成功会调用ajax的success函数,如果重定向后url的域名跟ajax请求的域名不是同一个域名,也就是跨域重定向(跨域 redirect),这个时候浏览器看到返回的response的Location跨域了就不会再发起请求,请求被拦截了,ajax请求失败会调用 error方法 那么如果我们非要做跨域重定向呢?这也是可以实现的,普通的ajax请求不行,我们需要 通过jsonp的方式,而且需要设置crossDomain:true,可以参考https://api.jquery.com/jQuery.ajax / 关于jquery.ajax方法的crossDomain 参数的说明 跨域redirect实例: test.html [html] view

CDN-内容推送网络

試著忘記壹切 提交于 2019-11-27 19:56:56
CDN- 内容推送网络 前段时间介绍了 浏览器缓存机制 ,通过浏览器缓存一方面可以改善用户的体验,而不用漫长地等待从服务器下载资源;另一方面减轻服务器压力、节省流量。 CDN 是另一种可以大幅度优化用户体验,且减轻服务器压力的技术。下面就自己了解的 CDN 技术分享下。 CDN 的实现是一组技术的组合,每个技术都可以单独成文详细讨论,这里就不深入每个技术。内容目录: 1. 什么是CDN ? 1 2. CDN 技术原理 ... 1 2.1. 分布式存储 ... 1 2.2. 内容管理 ... 2 2.3. 负载均衡 ... 2 2.4. 网络请求的重定向 ... 2 3. CDN 资源访问流程 ... 3 4. 关于 CDN 的疑问 ... 3 4.1. 使用 CDN 后,如何获取客户端真实 IP ? ... 3 4.2. 采用 CDN 服务以后如何保证内容的更新和同步? ... 4 1. 什么是 CDN ? CDN 的全称是 Content Delivery Network ,即 内容分发网络 。其目的是通过在现有的 Internet 中增加一层新的网络架构,将网站的内容发布到最接近用户的网络 " 边缘 " (边缘服务器),使用户可以就近取得所需的内容,解决 Internet 网络拥挤的状况,提高用户访问网站的响应速度。从技术上全面解决由于网络带宽小、用户访问量大

【深入HTTP协议】

心已入冬 提交于 2019-11-27 17:00:04
目录 HTTP 请求 HTTP 响应 原文: http://blog.gqylpy.com/gqy/305 "HTTP是(Hyper Text Transfer Protocol)超文本传输协议的缩写. HTTP的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC. RFC 1945定义了HTTP/1.0版本,其中最著名的就是RFC 2616,RFC 2616定义了今天普遍使用一个版本——HTTP 1.1 -------> HTTP协议(Hyper Text Transfer Protocol)超文本传输协议是用于从WWW服务器传输超文本到本地浏览器的传送协议. 它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等. @ HTTP响应模型 · HTTP协议永远都是客户端发起请求,服务器回送响应,如下图: 这样就限制了使用HTTP协议,无法实现在客户端没有发起请求的时候,服务器将消息推送给客户端. HTTP工作流程 · 一次HTTP操作称为一个事务 ,其工作过程可分为四步: 首先客户机与服务器需要建立连接

【深入HTTP协议】

女生的网名这么多〃 提交于 2019-11-27 16:19:49
目录 HTTP 请求 HTTP 响应 原文: http://blog.gqylpy.com/gqy/305 "HTTP是(Hyper Text Transfer Protocol)超文本传输协议的缩写. HTTP的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC. RFC 1945定义了HTTP/1.0版本,其中最著名的就是RFC 2616,RFC 2616定义了今天普遍使用一个版本——HTTP 1.1 -------> HTTP协议(Hyper Text Transfer Protocol)超文本传输协议是用于从WWW服务器传输超文本到本地浏览器的传送协议. 它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等. @ HTTP响应模型 · HTTP协议永远都是客户端发起请求,服务器回送响应,如下图: 这样就限制了使用HTTP协议,无法实现在客户端没有发起请求的时候,服务器将消息推送给客户端. HTTP工作流程 · 一次HTTP操作称为一个事务 ,其工作过程可分为四步: 首先客户机与服务器需要建立连接