Http 状态码 301 Permanent Rediret 302 Temporary Redirect、 重定向 重写

ops/2024/10/30 21:27:31/
http://www.w3.org/2000/svg" style="display: none;">

HTTP状态码301和302是什么?

1、HTTP状态码301

HTTP状态码301表示永久性转移(Permanent Redirect),这意味着请求的资源已经被分配了一个新的URI,以后的引用应该使用资源现在所指的URI。
HTTP 301状态码表示请求的资源已被永久移动到一个新的位置,当客户端接收到这个状态码时,它应该更新其链接,以便将来的请求直接使用新的URL,这种重定向通常用于网站的重构或合并,确保旧网址的用户能够无缝地访问到新的内容位置。

2、HTTP状态码302

HTTP状态码302表示临时性转移(Temporary Redirect),它告诉客户端在此次请求中,应临时地从不同的URI响应请求,但客户端应继续使用原有的URI以便于以后的请求。

一、定义不同

301状态码表示请求的资源已被永久性地移动到新位置,将来任何新的请求都应使用一个新的 URI;
302状态码表示请求的资源现在临时从不同的 URI 响应请求,由于这样的重定向是临时的,客户端应继续向原有地址发送以后的请求。

二、使用场景不同

301重定向通常用于永久性的URL改变,例如网站迁移、改变域名等;302重定向通常用于临时性的内容改变和URL重定向,例如网站维护期间,原URL临时跳转到维护通知页面。

三、对SEO的影响不同

对于搜索引擎而言,301意味着原网页已经不存在,需要更新索引;302表示原网页仍然存在,只是暂时修改了地址,因此搜索引擎会保留原网页的索引。

https://i-blog.csdnimg.cn/direct/8439a26edf89401fbad5c205b13dae9e.png" alt="在这里插入图片描述" />
https://i-blog.csdnimg.cn/direct/e8eee75833134494842c8355af2168d3.png" alt="在这里插入图片描述" />

URL 重写 vs URL 重定向

1、重写是 纯服务端的功能 重定向:需要客户端参与
重写 浏览器地址栏中的地址不会改变。就客户端而言,是感知不到URL重写的 request 1次
重定向 浏览器地址变化了,变成重定向的地址啦。 Request 2次
https://i-blog.csdnimg.cn/direct/f27ca8437ffa49df8ba0652c964a6889.png" alt="在这里插入图片描述" />
https://i-blog.csdnimg.cn/direct/76321028602042b6b14a0d5683842381.png" alt="在这里插入图片描述" />
https://i-blog.csdnimg.cn/direct/690154764a354fccb098282e5ad18939.png" alt="在这里插入图片描述" />
https://i-blog.csdnimg.cn/direct/21600b35453a432db880e368b6b2ec8f.png" alt="在这里插入图片描述" />
》》》》》ASP.NET Core的URL重写中间件能够同时满足二者的需求。
https://i-blog.csdnimg.cn/direct/11e530f2e4ca4d07a8a2231763fc69e8.png" alt="在这里插入图片描述" />
》》》》何时使用URL重写中间件

当无法在Windows Server上使用IIS重写模块、Apache服务器上的Apache mod_rewrite模块、Nginx上的URL重写或应用程序托管在HTTP.sys服务器(以前称为WebListener)上时,请使用URL重写中间件。推荐在IIS,Apache或Nginx中使用基于服务器的URL重写技术的主要原因是中间件不支持这些模块的全部功能,并且中间件的性能可能无法达到这些模块的性能。但是,这些服务器重写模块的某些功能不适用于ASP.NET Core项目,例如IIS Rewrite模块的IsFile和IsDirectory。在这些情况下,请改用中间件

https://i-blog.csdnimg.cn/direct/64b8a62e05bf4b2296a118c8f4378f12.png" alt="在这里插入图片描述" />
https://i-blog.csdnimg.cn/direct/2e2fe0e5bdf34a338a3cb516cae5eba0.png" alt="在这里插入图片描述" />
https://i-blog.csdnimg.cn/direct/aec31bd8cd294a6ba99f75aec383f9ae.png" alt="在这里插入图片描述" />
https://i-blog.csdnimg.cn/direct/aa917f38b7334f318213ddecb611f1b7.png" alt="在这里插入图片描述" />
https://i-blog.csdnimg.cn/direct/1affd2f62889458898109dc19348dc49.png" alt="在这里插入图片描述" />
https://i-blog.csdnimg.cn/direct/9ea3288ad3844a189874a2e013a9a05a.png" alt="在这里插入图片描述" />
https://i-blog.csdnimg.cn/direct/286744075d3d40cea9693cf10010fbc4.png" alt="在这里插入图片描述" />
示例应用程序将来自/apache-mod-rules-redirect/(.*)的请求重定向到/redirected?id=$1,响应码为302(Found)。

中间件支持以下Apache mod_rewrite服务器变量:

CONN_REMOTE_ADDR

HTTP_ACCEPT

HTTP_CONNECTION

HTTP_COOKIE

HTTP_FORWARDED

HTTP_HOST

HTTP_REFERER

HTTP_USER_AGENT

HTTPS

IPV6

QUERY_STRING

REMOTE_ADDR

REMOTE_PORT

REQUEST_FILENAME

REQUEST_METHOD

REQUEST_SCHEME

REQUEST_URI

SCRIPT_FILENAME

SERVER_ADDR

SERVER_PORT

SERVER_PROTOCOL

TIME

TIME_DAY

TIME_HOUR

TIME_MIN

TIME_MON

TIME_SEC

TIME_WDAY

TIME_YEAR

https://i-blog.csdnimg.cn/direct/b6ef8ef343e448588a79f33a52e94f9a.png" alt="在这里插入图片描述" />
中间件支持以下IIS URL重写模块服务器变量:

CONTENT_LENGTH

CONTENT_TYPE

HTTP_ACCEPT

HTTP_CONNECTION

HTTP_COOKIE

HTTP_HOST

HTTP_REFERER

HTTP_URL

HTTP_USER_AGENT

HTTPS

LOCAL_ADDR

QUERY_STRING

REMOTE_ADDR

REMOTE_PORT

REQUEST_FILENAME

REQUEST_URI

https://i-blog.csdnimg.cn/direct/6cce081543ae431283782f44eeb9d4e5.png" alt="在这里插入图片描述" />

基于方法的规则

https://i-blog.csdnimg.cn/direct/f9cc5b5d9d344d6db8ef30b0dde259f0.png" alt="在这里插入图片描述" />

基于IRule接口的规则

https://i-blog.csdnimg.cn/direct/44527a59c8a04cf7817ca5ea76e55943.png" alt="在这里插入图片描述" />


http://www.ppmy.cn/ops/129401.html

相关文章

Spring Task—定时任务

Spring Task 是 Spring 提供的一种轻量级定时任务调度功能,内置在 Spring 框架中。与 Quartz 等重量级调度框架相比,Spring Task 使用简便,无需额外依赖,适合在简单的调度任务场景中使用。通过注解配置方式,开发者可以…

LeetCode刷题日记之贪心算法(五)

目录 前言无重叠区间划分字母区间合并区间单调递增的数字监控二叉树总结 前言 随着对贪心算法的不断深入,本篇文章将继续挑战一些经典的题目,进一步巩固这一算法的应用技巧。希望博主记录的内容能够帮助大家更好地掌握贪心算法的解题思路✍✍✍ 无重叠区…

Jenkins和Gitlab整合构建CI/CD流水线

配置环境 虚拟机建议4G起步 192.168.58.199 192.168.58.200 部署Jenkins 部署Jenkins参考这篇文章:Jenkins安装部署_connecting to pkg.jenkins.io (pkg.jenkins.io)|151.-CSDN博客 安装完毕之后根据下图操作 选择git,添加git仓库克隆url,选…

贪心算法与盛雨水问题

啥是盛雨水问题?给个图就熟悉了 欸? 这其中的关键在于: 1. 容量2D化就是长 * 宽 2. 木桶效应:宽取决于短板。 那我们来分析,怎么样能达到最佳的结果呢?穷举一下所有可能性不就好了?每两个板子…

C++算法练习-day19——18.四数之和

题目来源:. - 力扣(LeetCode) 题目思路分析 题目要求在给定的整数数组 nums 和一个目标值 target 中,找出所有独特的四元组(四个数),使得这四个数的和等于 target。需要注意的是,解…

[JAVA]JDBC事务管理方式

本节我们要学习在JDBC中如何对数据库的事务进行管理,举一个生活中的例子,我们的小伙伴小红最近资金紧缺,钱包没有余额,小红便向小明借钱。于是小明很大方的借给小红100块钱,此时,小明的钱包余额便会减少100…

bluez hid host介绍,连接键盘/鼠标/手柄不是梦,安排

零. 前言 由于Bluez的介绍文档有限,以及对Linux 系统/驱动概念、D-Bus 通信和蓝牙协议都有要求,加上网络上其实没有一个完整的介绍Bluez系列的文档,所以不管是蓝牙初学者还是蓝牙从业人员,都有不小的难度,学习曲线也相对较陡,所以我有了这个想法,专门对Bluez做一个系统…

66Analytics 汉化版,网站统计分析源码,汉化前台后台

66Analytics 汉化版,网站统计分析源码,汉化前台后台 本源码汉化前台后台,非其他只汉化前台版 网络分析变得容易。自托管、友好、一体化的网络分析工具。轻量级跟踪、会话回放、热图、用户旅程等 简单、好看、友好-大多数网络分析解决方案做得太多了,在大…