首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

搞懂 HTTP 重定向 - 如何优雅地使用 301

内容较长,我们先看一下本文内容架构: HTTP 重定向详解 其他类型重定向方式 重定向使用场景 如何优雅地使用 301 1....如何优雅地使用 301 有些时候,我们对于永久重定向理解并不够,在仓促之中使用了 301 永久重定向时就会遇到这样一个坑,那就是不管我们怎么重新设置,(有些)浏览器都仍然使用最开始设置 301 永久重定向...如果我们没有提供明确缓存头,浏览器就会默认永久缓存 301 响应,因为 301永久重定向意思。...这里笔者偷懒没有测试 IE,但是鉴于有浏览器(Chrome/Firefox)会无限期缓存 301 重定向,那么我们就需要试着去解决这一问题 —— 如何清除 301 重定向缓存。...4.3 如何清除 301 重定向缓存 内心戏:不是说没法清除吗?这怎么介绍了。我:别急,先看完。

21.1K52

为 ASP.NET Core 程序制作 URL 301302 跳转

如果你有一些需要重定向网页 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 重定向会被浏览器缓存。也就是说如果你重定向到了一个错误网址,那么再次访问的话浏览器将直接访问这个错误网址。如果希望浏览器停止重定向到这个错误网址,需要清除浏览器缓存

27210
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    为 ASP.NET Core 程序制作 URL 301302 跳转

    本文描述如何在 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 重定向会被浏览器缓存。也就是说如果你重定向到了一个错误网址,那么再次访问的话浏览器将直接访问这个错误网址。如果希望浏览器停止重定向到这个错误网址,需要清除浏览器缓存

    3.9K10

    面试突击53:常见 HTTP 状态码有哪些?

    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:服务器内部出错。

    59010

    HTTP 304状态码详细讲解

    and unconditional requests 如果你想全局阻止HTTP/304响应,可以这么做:首先清除浏览器缓存,可以使用Fiddler工具栏上Clear Cache按钮(仅能清除Internet...301永久移动) 请求网页已永久移动到新位置。服务器返回此响应(对 GET 或 HEAD 请求响应)时,会自动将请求者转到新位置。...您应使用此代码告诉 Googlebot 某个网页或网站已永久移动到新位置。 302(临时移动) 服务器目前从不同位置网页响应请求,但请求者应继续使用原有位置来响应以后请求。...此代码与响应 GET 和 HEAD 请求 301 代码类似,会自动将请求者转到不同位置,但您不应使用此代码来告诉 Googlebot 某个网页或网站已经移动,因为 Googlebot 会继续抓取原有位置并编制索引...该代码与 404(未找到)代码类似,但在资源以前存在而现在不存在情况下,有时会用来替代 404 代码。如果资源已永久移动,您应使用 301 指定资源新位置。

    6.2K20

    关于HTTP 状态码不要再问我了,都在这了 。。。返回什么就去解决什么,不要盯着状态码找不到解决办法。。。

    下面是常见 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

    63320

    HTTP状态码大全

    下面是常见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

    18810

    HTTP 状态码 301 与 302 区别

    301 和 302 有啥区别 301 Moved Permanently,永久重定向。被请求资源已永久移动到新位置,并且将来任何对该资源引用都使用本响应返回若干个 URI 之一。...301 资源除非额外指定,否则都是可缓存。...访问本网页时候,由于使用 https 协议,并且设置 http 自动重定向到 https,所以假如直接使用 http 协议http://lz5z.com进行访问,会有一次 301 重定向。...对其进行访问时候就首先发生了 302 重定向。 使用时机 由于 301 重定向永久重定向,搜索引擎在抓取新内容同时也将旧网址替换为重定向之后网址。...所以 301 是对搜索引擎更加友好重定向,建议只要不是资源临时转移,都可以使用 301 方式。 参考资源 HTTP状态码#3xx重定向

    2K21

    HTTP状态码一览

    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

    27110

    3xx HTTP状态码终极指南

    在这篇文章中,我们将全面了解一下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,因为它们用于临时和永久重定向

    2.4K20

    301跳转与302有什么区别

    301:(永久移动)请求网页已被永久移动到新位置。服务器返回此响应(作为对GET或HEAD请求响应)时,会自动将请求者转到新位置。...302:(临时移动)服务器目前正从不同位置网页响应请求,但请求者应继续使用原有位置来进行以后请求。此代码与响应GET和HEAD请求301代码类似,会自动将请求者转到不同位置。...字面上区别就是301永久重定向,而302是临时重定向。 当然,他们之间也是有共同点,就是用户都可以看到url替换为了一个新,然后发出请求。...永久重定向有两个状态码: 301重定向请求通常会使用 GET 方法,不管原请求使用是何种方法。 308,为了补充 301.重定向必须使用原请求方法和包体访问。...307,为了补充 302.重定向必须使用原请求方法和包体访问。 三、 301重定向与302跳转区别 1.不同使用效果 301重定向是一种永久重定向,而302跳转是暂时跳转。

    2.3K30

    常见”HTTP状态码”大全

    下面是常见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

    1.1K00

    HTTP状态码汇总详解

    请求资源可包括多个位置,相应可返回一个资源特征与地址列表用于用户终端(例如:浏览器)选择 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

    33420

    HTTP状态码

    下面是常见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

    1.1K10

    HTTP状态码

    请求资源可包括多个位置,相应可返回一个资源特征与地址列表用于用户终端(例如:浏览器)选择 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

    1.1K20

    关于HTTP状态码详细解析

    状态码301 永久移动,请求资源被永久移动到新URI,返回信息会包括新URI,浏览器会自动定向到新URI,今后任何新请求都应用使用新URI代替。...状态码302 临时移动,与301类似,但是资源是临时被移动,客户端应继续使用原有的URI。 状态码303 查看其他地址,与301类似,使用GET和POST请求查看。...所请求资源必须通过代理访问。 状态码307 临时重定向,和302类似,使用GET方式去重定向。 状态码400 客户端求情语法错误,服务器无法理解。 状态码401 请求要求用户身份验证。...状态码410 客户端请求 资源已经不存在,410与404不同,如果资源以前有,现在被永久删除了可使用410代码,网站设计人员可通过301代码指定资源新位置。...状态码505 服务器不支持请求HTTP协议版本,无法完成处理。

    78210

    前端面试题-每日练习(5)

    请求资源可包括多个位置,相应可返回一个资源特征与地址列表用于用户终端(例如:浏览器)选择 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

    17320

    301 跳转被浏览器缓存,怎么办?

    先百科一下什么是 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:

    1.1K40

    Requests库(五)接口返回状态码

    请求资源可包括多个位置,相应可返回一个资源特征与地址列表用于用户终端(例如:浏览器)选择 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

    4.3K10

    一次奇怪http状态码改变

    如果仍然有人需要支持非常老浏览器,则可以修改RequestRedirect.code = 301支持301重定向 由/a重定向到/a/并不会改变method,301和308对于多数人没有什么影响 相关...关于3xxhttp状态码,简单做一下介绍: HTTP 301 Moved Permanently 永久重定向:被请求资源已永久移动到新位置,并且将来任何对此资源引用都应该使用本响应返回若干个...HTTP 302 Found 临时重定向:请求资源现在临时从不同 URI 响应请求。由于这样重定向是临时,客户端应当继续向原有地址发送以后请求。...只有在Cache-Control或Expires中进行了指定情况下,这个响应才是可缓存。...但是已经被弃用了 HTTP 307 Temporary Redirect 临时重定向且不能修改之后请求方法,302扩充 HTTP 308 Permanent Redirect 永久重定向且不能修改之后请求方法

    91341
    领券