zoukankan      html  css  js  c++  java
  • 状态码301和302的区别

    定义如下:

    301 Moved Permanently 被请求的资源已永久移动到新位置,并且将来任何对此资源的引用都应该使用本响应返回的若干个URI之一。如果可能,拥有链接编辑功能的客户端应当自动把请求的地址修改为从服务器反馈回来的地址。除非额外指定,否则这个响应也是可缓存的。


    302 Found 请求的资源现在临时从不同的URI响应请求。由于这样的重定向是临时的,客户端应当继续向原有地址发送以后的请求。只有在Cache-Control或Expires中进行了指定的情况下,这个响应才是可缓存的。

    字面上的区别就是301是永久重定向,而302是临时重定向。 当然,他们之间也是有共同点的,就是用户都可以看到url替换为了一个新的,然后发出请求。

    301适合永久重定向

      301比较常用的场景是使用域名跳转。

      比如,我们访问 http://www.baidu.com 会跳转到 https://www.baidu.com,发送请求之后,就会返回301状态码,然后返回一个location,提示新的地址,浏览器就会拿着这个新的地址去访问。 

      注意: 301请求是可以缓存的, 即通过看status code,可以发现后面写着from cache。

         或者你把你的网页的名称从php修改为了html,这个过程中,也会发生永久重定向。

    302用来做临时跳转

      比如未登陆的用户访问用户中心重定向到登录页面。

      访问404页面会重新定向到首页。 

    ##niginx 301/302配置

    rewrite后面接上permenent就代表301跳

    //把来自veryyoung.me的请求301跳到 www.veryyoung.me
    if ($host != 'veryyoung.me') {
        rewrite ^/(.*)$ http://www.veryyoung.me/$1 permanent;
    }

    接上redirect就代表302跳

    //把来自veryyoung.me的请求302跳到 www.veryyoung.me
    if ($host != 'veryyoung.me') {
        rewrite ^/(.*)$ http://www.veryyoung.me/$1 redirect;
    }

    301重定向和302重定向的区别

      302重定向只是暂时的重定向,搜索引擎会抓取新的内容而保留旧的地址,因为服务器返回302,所以,搜索搜索引擎认为新的网址是暂时的。

      而301重定向是永久的重定向,搜索引擎在抓取新的内容的同时也将旧的网址替换为了重定向之后的网址。

      

     

    好文: https://www.seozac.com/seo/url-canonicalization/

  • 相关阅读:
    洛谷P1057传球游戏(逆向递推递归+记忆化)
    洛谷P1433吃奶酪(正向暴力递归,回溯更新)
    洛谷P1434滑雪(逆向图的遍历搜索递归+记忆化,最长路问题)
    洛谷P1192台阶问题(逆向递推递归dfs+记忆化)
    洛谷p1025数的划分(正向暴力递归,数学排列与组合问题)
    洛谷P1141 01迷宫(图的遍历搜素递归dfs或bfs,连痛块回溯更新问题,记忆化或者并查集根结点)
    Git 版本更新--Windows
    plop-templates自动新建项目文件
    前端-随机生成测试数据-mockjs
    cookie、seseionStorage、localStorage的区别
  • 原文地址:https://www.cnblogs.com/zhuzhenwei918/p/7582620.html
Copyright © 2011-2022 走看看