内容较长,我们先看一下本文的内容架构: HTTP 重定向详解 其他类型的重定向方式 重定向的使用场景 如何优雅地使用 301 1....如何优雅地使用 301 有些时候,我们对于永久重定向的理解并不够,在仓促之中使用了 301 永久重定向时就会遇到这样的一个坑,那就是不管我们怎么重新设置,(有些)浏览器都仍然使用最开始设置的 301 永久重定向...如果我们没有提供明确的缓存头,浏览器就会默认永久缓存 301 响应,因为 301 是永久重定向的意思。...这里笔者偷懒没有测试 IE,但是鉴于有浏览器(Chrome/Firefox)会无限期缓存 301 重定向,那么我们就需要试着去解决这一问题 —— 如何清除 301 重定向缓存。...4.3 如何清除 301 重定向缓存 内心戏:不是说没法清除吗?这怎么介绍了。我:别急,先看完。
如果你有一些需要重定向网页 URL 的情况,可以返回 HTTP 状态码 301/302 告诉浏览器或者搜索引擎访问新的 URL。本文描述如何在 ASP.NET Core 中进行重定向。...HTTP 状态码 301/302 301 表示“Moved Permanently”,即永久移动。通过返回此状态码可以告知浏览器或者搜索引擎此 URL 已经永久移动到了新的 URL 地址。...还有其他的重定向的 HTTP 状态码: 303 See Other 307 Temporary Redirect 308 Permanent Redirect 301/302 本来设计为移动资源的时候保持方法不变...于是在后来的 HTTP 标准中将浏览器的错误实现变成了标准,301 和 302 方法要求使用 GET 方法重定向。...小心缓存 请注意,301 重定向会被浏览器缓存。也就是说如果你重定向到了一个错误的网址,那么再次访问的话浏览器将直接访问这个错误的网址。如果希望浏览器停止重定向到这个错误的网址,需要清除浏览器的缓存。
本文描述如何在 ASP.NET Core 中进行重定向。 ---- HTTP 状态码 301/302 301 表示“Moved Permanently”,即永久移动。...通过返回此状态码可以告知浏览器或者搜索引擎此 URL 已经永久移动到了新的 URL 地址。...还有其他的重定向的 HTTP 状态码: 303 See Other 307 Temporary Redirect 308 Permanent Redirect 301/302 本来设计为移动资源的时候保持方法不变...于是在后来的 HTTP 标准中将浏览器的错误实现变成了标准,301 和 302 方法要求使用 GET 方法重定向。...小心缓存 请注意,301 重定向会被浏览器缓存。也就是说如果你重定向到了一个错误的网址,那么再次访问的话浏览器将直接访问这个错误的网址。如果希望浏览器停止重定向到这个错误的网址,需要清除浏览器的缓存。
301:Moved Permanently 永久移动。请求的资源已被永久的移动到新 URI,返回信息会包括新的 URI,浏览器会自动定向到新 URI。今后任何新的请求都应使用新的 URI 代替。...302:Found 临时移动,与 301 类似。但资源只是临时被移动。客户端应继续使用原有URI。 303:See Other 查看其它地址。与 301 类似。...所请求的资源必须通过代理访问。 306:Unused 已经被废弃的 HTTP 状态码。 307:Temporary Redirect 临时重定向。与 302 类似。使用 GET 请求重定向。...410:Gone 客户端请求的资源已经不存在。410 不同于 404,如果资源以前有现在被永久删除了可使用 410 代码,网站设计人员可通过 301 代码指定资源的新位置。...其中常见的具体状态码有:200:请求成功;301:永久重定向;302:临时重定向;404:无法找到此页面;405:请求的方法类型不支持;500:服务器内部出错。
and unconditional requests 如果你想全局阻止HTTP/304响应,可以这么做:首先清除浏览器的缓存,可以使用Fiddler工具栏上的Clear Cache按钮(仅能清除Internet...301(永久移动) 请求的网页已永久移动到新位置。服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自动将请求者转到新位置。...您应使用此代码告诉 Googlebot 某个网页或网站已永久移动到新位置。 302(临时移动) 服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来响应以后的请求。...此代码与响应 GET 和 HEAD 请求的 301 代码类似,会自动将请求者转到不同的位置,但您不应使用此代码来告诉 Googlebot 某个网页或网站已经移动,因为 Googlebot 会继续抓取原有位置并编制索引...该代码与 404(未找到)代码类似,但在资源以前存在而现在不存在的情况下,有时会用来替代 404 代码。如果资源已永久移动,您应使用 301 指定资源的新位置。
下面是常见的 HTTP 状态码: 200 - 请求成功 301 - 资源(网页等)被永久转移到其它URL 404 - 请求的资源(网页等)不存在 500 - 内部服务器错误 HTTP 状态码分类 HTTP...请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择 301 Moved Permanently 永久移动。...请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替 302 Found 临时移动。与301类似。但资源只是临时被移动。...所请求的资源必须通过代理访问 306 Unused 已经被废弃的HTTP状态码 307 Temporary Redirect 临时重定向。与302类似。...410不同于404,如果资源以前有现在被永久删除了可使用410代码,网站设计人员可通过301代码指定资源的新位置 411 Length Required 服务器无法处理客户端发送的不带Content-Length
下面是常见的HTTP状态码: 200 - 请求成功 301 - 资源(网页等)被永久转移到其它URL 404 - 请求的资源(网页等)不存在 500 - 内部服务器错误...请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择 301 Moved Permanently 永久移动。...请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替 302 Found 临时移动。与301类似。但资源只是临时被移动。...所请求的资源必须通过代理访问 306 Unused 已经被废弃的HTTP状态码 307 Temporary Redirect 临时重定向。与302类似。...410不同于404,如果资源以前有现在被永久删除了可使用410代码,网站设计人员可通过301代码指定资源的新位置 411 Length Required 服务器无法处理客户端发送的不带Content-Length
301 和 302 有啥区别 301 Moved Permanently,永久重定向。被请求资源已永久移动到新位置,并且将来任何对该资源的引用都使用本响应返回的若干个 URI 之一。...301 资源除非额外指定,否则都是可缓存的。...访问本网页的时候,由于使用 https 协议,并且设置 http 自动重定向到 https,所以假如直接使用 http 协议http://lz5z.com进行访问,会有一次 301 重定向。...对其进行访问的时候就首先发生了 302 重定向。 使用时机 由于 301 重定向是永久的重定向,搜索引擎在抓取新内容的同时也将旧的网址替换为重定向之后的网址。...所以 301 是对搜索引擎更加友好的重定向,建议只要不是资源临时转移,都可以使用 301 的方式。 参考资源 HTTP状态码#3xx重定向
在这篇文章中,我们将全面了解一下3xx HTTP状态码,从这里你可以了解它们是如何工作的,如何更好地管理它们,以及它们对SEO的影响。...303 See Other 该HTTP状态码允许REST API以引用的形式向客户发送建议。303重定向的一个显著特点是其无缓存性能。但值得一提的是,重定向的第二个会话将被缓存。...你可以使用以下几个HTTP 3xx状态码: 301或308永久重定向 302,303,307临时重定向 当涉及到临时和永久重定向时,301和302 HTTP状态码总是被优先考虑。...用于重定向将被恢复的旧网页。 重定向语法 被改变 被改变 永久重定向 参数对比 301 308 重定向类型 永久 永久 什么时候使用 用于重定向即将被删除的旧网页。 用于重定向将被删除的旧网页。...重定向语法 被改变 不被改变 需要哪种状态码 必不可少的HTTP 300状态码是301、302和307,因为它们用于临时和永久重定向。
HTTP状态码共分为5种类型: HTTP状态码分类 1** 信息,服务器收到请求,需要请求者继续执行操作 2** 成功,操作被成功接收并处理 3** 重定向,需要进一步的操作以完成请求 4** 客户端错误...请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择 301 Moved Permanently 永久移动。...请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替 302 Found 临时移动。与301类似。但资源只是临时被移动。...所请求的资源必须通过代理访问 306 Unused 已经被废弃的HTTP状态码 307 Temporary Redirect 临时重定向。与302类似。...410不同于404,如果资源以前有现在被永久删除了可使用410代码,网站设计人员可通过301代码指定资源的新位置 411 Length Required 服务器无法处理客户端发送的不带Content-Length
下面是常见的HTTP状态码: 200 – 请求成功 301 – 资源(网页等)被永久转移到其它URL 404 – 请求的资源(网页等)不存在 500 – 内部服务器错误 HTTP状态码分类 HTTP状态码由三个十进制数字组成...请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择301Moved Permanently永久移动。...请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替302Found临时移动。与301类似。但资源只是临时被移动。...所请求的资源必须通过代理访问306Unused已经被废弃的HTTP状态码307Temporary Redirect临时重定向。与302类似。...410不同于404,如果资源以前有现在被永久删除了可使用410代码,网站设计人员可通过301代码指定资源的新位置411Length Required服务器无法处理客户端发送的不带Content-Length
301:(永久移动)请求的网页已被永久移动到新位置。服务器返回此响应(作为对GET或HEAD请求的响应)时,会自动将请求者转到新位置。...302:(临时移动)服务器目前正从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。此代码与响应GET和HEAD请求的301代码类似,会自动将请求者转到不同的位置。...字面上的区别就是301是永久重定向,而302是临时重定向。 当然,他们之间也是有共同点的,就是用户都可以看到url替换为了一个新的,然后发出请求。...永久重定向有两个状态码: 301,重定向请求通常会使用 GET 方法,不管原请求使用的是何种方法。 308,为了补充 301.重定向必须使用原请求的方法和包体访问。...307,为了补充 302.重定向必须使用原请求的方法和包体访问。 三、 301重定向与302跳转的区别 1.不同的使用效果 301重定向是一种永久重定向,而302跳转是暂时的跳转。
请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择 301 Moved Permanently 永久移动。...请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替 302 Found 临时移动。与301类似。但资源只是临时被移动。...客户端通常会缓存访问过的资源,通过提供一个头信息指出客户端希望只返回在指定日期之后修改的资源 305 Use Proxy 使用代理。...所请求的资源必须通过代理访问 306 Unused 已经被废弃的HTTP状态码 307 Temporary Redirect 临时重定向。与302类似。...410不同于404,如果资源以前有现在被永久删除了可使用410代码,网站设计人员可通过301代码指定资源的新位置 411 Length Required 服务器无法处理客户端发送的不带Content-Length
下面是常见的HTTP状态码: 200 - 请求成功 301 - 资源(网页等)被永久转移到其它URL 404 - 请求的资源(网页等)不存在 500 - 内部服务器错误 HTTP状态码分类 HTTP状态码由三个十进制数字组成...请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择301Moved Permanently永久移动。...请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替302Found临时移动。与301类似。但资源只是临时被移动。...所请求的资源必须通过代理访问306Unused已经被废弃的HTTP状态码307Temporary Redirect临时重定向。与302类似。...410不同于404,如果资源以前有现在被永久删除了可使用410代码,网站设计人员可通过301代码指定资源的新位置411Length Required服务器无法处理客户端发送的不带Content-Length
状态码301 永久移动,请求的资源被永久移动到新的URI,返回的信息会包括新的URI,浏览器会自动定向到新的URI,今后任何新的请求都应用使用新的URI代替。...状态码302 临时移动,与301类似,但是资源是临时被移动,客户端应继续使用原有的URI。 状态码303 查看其他地址,与301类似,使用GET和POST请求查看。...所请求的资源必须通过代理访问。 状态码307 临时重定向,和302类似,使用GET的方式去重定向。 状态码400 客户端的求情语法错误,服务器无法理解。 状态码401 请求要求用户身份验证。...状态码410 客户端请求的 资源已经不存在,410与404不同,如果资源以前有,现在被永久删除了可使用410代码,网站设计人员可通过301代码指定资源的新位置。...状态码505 服务器不支持请求的HTTP协议的版本,无法完成处理。
请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择 301 Moved Permanently 永久移动。...请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替 302 Found 临时移动。与301类似。...但资源只是临时被移动。客户端应继续使用原有URI 303 See Other 查看其它地址。与301类似。...所请求的资源必须通过代理访问 306 Unused 已经被废弃的HTTP状态码 307 Temporary Redirect 临时重定向。与302类似。...410不同于404,如果资源以前有现在被永久删除了可使用410代码,网站设计人员可通过301代码指定资源的新位置 411 Length Required 服务器无法处理客户端发送的不带Content-Length
先百科一下什么是 301 跳转? 301跳转是指页面永久性移走,通常叫做301跳转,也叫301永久重定向,301跳转多用于旧网址在废弃前转向新网址以保证用户的访问,在诸多服务器中,均支持本跳转方法。...如何实现 301 跳转 简单的 PHP 跳转代码: header("HTTP/1.1 301 Moved Permanently"); header("Location: https://要跳转的链接/...但是我在使用当中发现,301 跳转会被浏览器缓存,就是中间的跟踪统计的程序处理过程不会被执行,浏览器直接跳转到目标链接。...给 301 跳转添加缓存通知头 header("Cache-Control: no-store, no-cache, must-revalidate"); header("HTTP/1.1 301 Moved...所以 302 跳转只要不指定 Cache-Control 或 Expires,就是不缓存的: header("HTTP/1.1 302 Found"); header("Location: https:
如果仍然有人需要支持非常老的浏览器,则可以修改RequestRedirect.code = 301支持301重定向 由/a重定向到/a/并不会改变method,301和308对于多数人没有什么影响 相关...关于3xx的http状态码,简单做一下介绍: HTTP 301 Moved Permanently 永久重定向:被请求的资源已永久移动到新位置,并且将来任何对此资源的引用都应该使用本响应返回的若干个...HTTP 302 Found 临时重定向:请求的资源现在临时从不同的 URI 响应请求。由于这样的重定向是临时的,客户端应当继续向原有地址发送以后的请求。...只有在Cache-Control或Expires中进行了指定的情况下,这个响应才是可缓存的。...但是已经被弃用了 HTTP 307 Temporary Redirect 临时重定向且不能修改之后的请求方法,302的扩充 HTTP 308 Permanent Redirect 永久重定向且不能修改之后的请求方法
领取专属 10元无门槛券
手把手带您无忧上云