zoukankan      html  css  js  c++  java
  • 页面跳转的方法以及301 和 302的区别

    前言

    在web开发的时候经常会遇到页面重定向的问题,说起重定向就不得不说HTTP STATUS CODE 301 和302. 301 是Moved Permanently,也就是"永久转移", 302则是Temporarily Moved,是"暂时转移"。

    在生产环境,建议使用301永久重定向,不使用302临时跳转,因为对于搜索引擎来说,会自动将原来页面的收录和权重转移到新的页面,有利于SEO.

    一、C#实现301和302跳转

    把C#代码写在前台aspx页面中,好处是不用编译就可以发布。直接使用Redirect就是302跳转。

    <% Response.Redirect("http://www.qidian.com"); %> 

    如果在跳转的时候加一些HTTP HEADER,在.net 2.0下也可实现301永久转移。

    <%
    
        Response.Status = "301 Moved Permanently";
        Response.AddHeader("X-Message", "By fanyong @ SNDA");
        Response.AddHeader("Location", "http://www.qidian.com/");
        Response.Write("<head><title>Document Moved</title></head><body><h1>Object Moved</h1>This document may be found <a HREF="http://www.qidian.com">here</a></body>");
        Response.End();
    %>

    当然,在高版本的Framework中,直接使用:
    Response.RedirectPermanent() 实现301永久转移。

    二、js控制跳转

    <script type="text/javascript">
        window.onload=function redirct2qidian(){    
            window.location.href="http://www.qidian.com/";
        }
    </script>

    或者通过:

    <meta http-equiv="Refresh" content="3; url=http://www.qidian.com" />

    这2种方法的缺点是搜索引擎蜘蛛不会执行js,所以使用js跳转不会把原来页面的权重转移到新的页面,而且搜索引擎对于javascript重定向以及meta刷新会认定为欺骗而进行惩罚。因此不可取。

    三、php实现 301跳转

    <?php
    Header("HTTP/1.1 301 Moved Permanently");
    Header("Location: http://www.baidu.com");
    ?>
  • 相关阅读:
    开发一款即时通讯App,从这几步开始
    即时通讯App怎样才能火?背后的技术原理,可以从这5个角度切入
    快速搭建一个“微视”类短视频 App
    iOS Push详述,了解一下?
    怒刷3000条短视频后,我终于发现网红300万点赞的套路
    如何精准实现OCR文字识别?
    30分钟彻底弄懂flex布局
    渲染管道
    游戏引擎架构Note2
    浮点数的内存表示方法
  • 原文地址:https://www.cnblogs.com/fanyong/p/3202586.html
Copyright © 2011-2022 走看看