大家好,我是贝贝。今天聊聊301跳转和SEO。很多朋友担心做301会降权,也有朋友做完发现流量没过来。我结合自己的经验,把这件事拆开说说。
简单说,就是永久重定向。比如你的网站换了新域名,从 old.com 换到 new.com。你希望访问 old.com 的用户和搜索引擎,都能自动、永久地转到 new.com 去。这就是301跳转的核心作用。
它和302跳转不一样。302是临时跳转,搜索引擎会认为旧地址还是有效的,只是临时换个地方。所以做整站迁移或永久性URL变更,必须用301。
网站改版、换域名、调整目录结构,这些情况都难免。如果不做301,老页面的链接权重就丢了。搜索引擎之前积累的收录、排名,可能就没了。用户点开老链接,看到的是404错误页,体验很差。
做301,就是告诉搜索引擎:“这个地址永久搬家了,新家在这儿,以后请认准新地址。” 这样,搜索引擎会把旧地址的权重,尽可能传递到新地址上。
这里说几个具体方法。不同服务器环境,设置方式不同。
1. Apache服务器(通常用.htaccess文件)
在网站根目录的.htaccess文件里加代码。比如把 old.com 整个站跳到 new.com:
```
RewriteEngine On
RewriteCond %{HTTP_HOST} ^old.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.old.com$
RewriteRule ^(.*)$ http://www.new.com/$1 [R=301,L]
```
如果是单个页面跳转,比如 old.com/page-a 跳到 new.com/page-b:
```
Redirect 301 /page-a http://www.new.com/page-b
```
2. Nginx服务器
在Nginx的站点配置文件里修改。整站跳转:
```
server {
listen 80;
server_name old.com www.old.com;
return 301 http://www.new.com$request_uri;
}
```
单个页面跳转:
```
location = /page-a {
return 301 http://www.new.com/page-b;
}
```
3. 用PHP等程序代码实现
在页面头部加入:
```
header("P/1.1 301 Moved Permanently"header("Location: http://www.new.com/new-page/"();
>
```
4. 在CMS或宝塔面板里操作
现在很多面板有可视化设置。比如宝塔面板,网站设置里有个“重定向”功能。直接填旧URL和新URL,选“301”类型,保存就行。WordPress也有不少重定向插件,比如Redirection,可以批量管理。
有几个细节容易出错。
*协议要一致:http跳http,https跳https。混用有时会出循环错误。
*带不带www:你决定主域名用 www.new.com 还是 new.com。跳转目标必须统一,别有的页面跳带www的,有的跳不带www的。
*保持路径完整:上面整站跳转的例子里,`$request_uri` 或 `$1` 这部分很重要。它能把 old.com/xxx/yyy 的访问,完整地跳到 new.com/xxx/yyy。别丢了。
*检查死循环:自己多点点测试。别出现A跳B,B又跳回A的情况。
设置完不是就完了。要去搜索引擎站长平台提交。
*百度搜索资源平台:在“网站改版”工具里提交改版规则。如果是换域名,就提交新旧域名对应关系。这能加快百度对301的识别和权重转移。
*Google Search Console:在“地址变更”里报告。同时把新站点添加到GSC。
*检查索引状态:过几周,去站长平台看新地址的收录量有没有涨,旧地址的收录量有没有降。这是判断301是否生效的直观方法。
*更新外链:尽可能联系那些给你做了外链的网站,请他们把链接更新到新地址。虽然301能传递权重,但直接链向新地址更好。
这个过程需要时间,不是立竿见影。下面这个表格是我之前一个项目的大致数据变化,你可以参考下。
| 时间节点 | 旧域名收录量 | 新域名收录量 | 核心词排名(新站) |
|---|---|---|---|
| :--- | :--- | :--- | :--- |
| 跳转前 | 约1500 | 约10 | 无 |
| 跳转后1个月 | 约800 | 约600 | 部分进入前100 |
| 跳转后3个月 | 约200 | 约1300 | 大部分恢复至前20 |
| 跳转后6个月 | 少于50 | 约1450 | 接近或达到原水平 |
数据说明:这是个内容站,跳转前后内容不变,并主动在站长平台提交了改版。你可以看到收录和排名是逐步迁移的。
我碰到过的问题,你们可以避开。
*批量跳转规则写错:用通配符时,测试几个边缘案例。比如跳转 /product/*到 /goods/*,要看看 /product 本身这个目录页有没有被正确跳转。
*忽略链式跳转:尽量避免A→B→C这种多次跳转。尽量一步到位。跳转次数越多,权重损耗可能越大,搜索引擎抓取也费劲。
*只做首页跳转:换了域名,不能只把首页 old.com 跳到 new.com。必须全站所有页面都做一对一跳转,或者用通配符规则确保全覆盖。
*跳转后立刻关旧站:设置好301后,旧站服务器至少要维持几个月。因为搜索引擎蜘蛛和用户缓存更新需要时间。
*没做404监控:跳转后,用工具扫描一下旧域名,看看有没有漏掉的页面没设置跳转,产生了新404。这些需要补上301规则。
最后说点建议。
*保留跳转记录:把你设置的跳转规则用表格记下来。以后排查问题方便。
*优先在服务器层面做:用.htaccess或Nginx配置做,效率比用PHP代码高,对服务器压力小。
*测试工具:用在线HTTP状态码检查工具,或者浏览器插件(如Redirect Path),检查你的跳转返回的状态码是不是301。
*耐心等:权重传递和排名恢复,以月为单位观察。别等了两周没动静就去乱改设置。
关于301跳转,基本就是这些。核心就是:理解原理,方法做对,细节抠好,然后给搜索引擎一些时间。
本文由小艾于2026-04-27发表在爱普号,如有疑问,请联系我们。
本文链接:https://www.ipbcms.com/1366.html