301跳转怎么弄?网页301跳转代码教程

axin 2024-11-03 40人围观 ,发现0个评论 301跳转代码网页跳转代码
  1. 在 HTML 中设置 301 跳转(不推荐,有局限性)

    • 可以使用<meta>标签来实现简单的跳转,但这种方式不是所有浏览器和搜索引擎都能很好地支持。代码如下:

<!DOCTYPE html>
<html>
<head>
    <meta http - equiv="refresh" content="0; url=https://new-url.com">
    <title>Page is Moving</title>
</head>
<body>
    <p>This page has moved to <a href="https://new-url.com">a new location</a>.</p>
</body>
</html>
  • 解释:

    • <meta http - equiv="refresh"http - equiv属性用于把content属性关联到 HTTP 头部。在这里,它表示这是一个类似于 HTTP 头部指令的操作。

    • content="0; url=https://new-url.com"content属性的值有两部分。0表示页面在加载后立即(0 秒后)进行跳转,url=https://new-url.com是要跳转到的目标网址。这种方式实际上是一种页面刷新并跳转的操作,不是真正意义上的 301 状态码跳转。


  1. 在服务器端设置 301 跳转(推荐)

    • 如果你的网站是基于 Apache 服务器,可以通过修改.htaccess文件来实现 301 跳转。首先确保你的服务器允许使用.htaccess文件进行配置。

    • 代码示例:

    • Apache 服务器

Redirect 301 /old - page.html https://new - url.com/new - page.html
  • 解释:

    • Redirect 301:这是 Apache 服务器的重定向指令,301表示这是一个永久重定向。

    • /old - page.html:是要重定向的源页面路径,可以是具体的 HTML 文件、目录等。

    • https://new - url.com/new - page.html:是目标页面的完整 URL,即用户访问源页面时将被重定向到的新页面。

  • 对于整个目录的重定向,可以使用以下代码:

RedirectMatch 301 ^/old - directory/(.*)$ https://new - url.com/new - directory/$1
  • 解释:

    • RedirectMatch 301:和Redirect 301类似,但RedirectMatch允许使用正则表达式来匹配要重定向的源路径。

    • ^/old - directory/(.*)$:这是一个正则表达式。^表示匹配字符串的开头,/old - directory/是要匹配的目录路径,(.*)表示匹配目录下的任意内容(包括子目录和文件),$表示匹配字符串的结尾。

    • https://new - url.com/new - directory/$1$1是一个反向引用,它引用了前面正则表达式中(.*)匹配到的内容,这样可以将旧目录下的文件和子目录结构正确地重定向到新目录下的相应位置。

  • Nginx 服务器

    • 在 Nginx 服务器中,可以在服务器配置文件(通常是nginx.conf)或者虚拟主机配置文件中设置 301 跳转。

    • 代码示例:

server {
    listen       80;
    server_name  old - domain.com;
    return 301 https://new - domain.com$request_uri;
}
  • 解释:

    • server:定义了一个服务器块。

    • listen 80:表示服务器监听 80 端口,这是 HTTP 协议的默认端口。

    • server_name old - domain.com:指定了服务器名称,即要进行重定向的旧域名。

    • return 301 https://new - domain.com$request_urireturn 301表示进行 301 永久重定向,https://new - domain.com$request_uri是目标 URL。$request_uri是一个 Nginx 变量,表示当前请求的 URI(包括查询字符串),这样可以确保完整的页面路径被正确重定向。

  • IIS 服务器(Internet Information Services)

    • 选择 “重定向”,重定向类型选择 “永久(301)”,在 “重定向 URL” 字段中输入目标 URL,例如https://new - url.com/new - page.html

    • 选择 “请求的 URL”,模式可以是 “与模式匹配”,在文本框中输入要重定向的旧 URL 路径,例如old - page.html

    • 在 IIS 中,可以通过配置 URL 重写模块来实现 301 跳转。如果没有安装 URL 重写模块,需要先安装。

    • 打开 IIS 管理器,找到要设置重定向的网站或应用程序。在功能视图中,双击 “URL 重写”。

    • 点击 “添加规则”,选择 “空白规则”。

    • 在 “名称” 字段中输入规则名称,比如 “301 Redirect”。

    • 在 “匹配 URL” 部分:

    • 在 “操作” 部分:

    • 保存规则后,IIS 就会按照设置进行 301 重定向。


  1. 使用编程语言设置 301 跳转(如在 PHP 中)

    • 如果你的网页是基于 PHP 开发的,可以在 PHP 脚本中设置 301 跳转。代码如下:

    •  <?php
       header("HTTP/1.1 301 Moved Permanently");
       header("Location: https://new - url.com");
       exit();
      ?>
  • 解释:

    • header("HTTP/1.1 301 Moved Permanently"):这行代码发送一个 HTTP 头部信息,告诉浏览器这是一个 301 永久重定向。

    • header("Location: https://new - url.com"):指定了重定向的目标 URL。

    • exit():结束脚本的执行,确保在发送头部信息后没有其他多余的输出,因为头部信息必须在任何页面内容输出之前发送。


在设置 301 跳转后,要注意对旧链接进行测试,确保搜索引擎能够正确地索引新链接,并且用户访问旧链接时能够顺利地跳转到新链接。同时,根据网站的规模和结构,合理选择设置 301 跳转的方式。


请关注微信公众号
微信二维码
不容错过
Powered By TOPYUN 云产品资讯