全站301重定向新旧域名,迁移保留SEO权重
换域名最怕的是旧域名积累的搜索排名和流量一夜清零。
全站301重定向就是把旧域名所有页面的访问请求,永久指向新域名对应页面,让搜索引擎把旧域名的权重逐步转移到新域名。
本文面向零基础用户,讲清从准备到验证的完整流程,照着做就能完成迁移。
动手前先确认这几件事
做301重定向不是改一行代码就完事,先检查条件是否具备,能避免后面反复返工。
- 新域名已经能正常访问,并且网站内容与旧域名一致。如果新域名还是空白站,重定向过去只会把用户引到404页面。
- 旧域名的DNS解析仍然有效,服务器或虚拟主机还在运行。域名一旦停止解析,重定向规则就不会生效。
- 确认旧域名是否已备案。如果服务器在国内,未备案的旧域名可能被拦截,重定向也无法执行。
- 备份旧域名的Nginx或Apache配置文件。改错配置导致网站打不开时,可以快速还原。
Nginx环境下的全站301配置
Nginx是目前最常见的Web服务器,配置301重定向主要靠return指令或rewrite规则。
假设旧域名为old.com,新域名为new.com,在旧域名的server块中添加以下内容:
server {
listen 80;
server_name old.com www.old.com;
return 301 https://www.new.com$request_uri;
}
如果旧域名启用了HTTPS,还需要在443端口的server块中做同样跳转:
server {
listen 443 ssl;
server_name old.com www.old.com;
ssl_certificate /path/to/old.com.crt;
ssl_certificate_key /path/to/old.com.key;
return 301 https://www.new.com$request_uri;
}
关键点是$request_uri变量,它保留原始请求的路径和参数。
比如访问old.com/about?,会跳转到
page=2new.com/about?,而不是全部跳到首页。
page=2
改完配置后执行nginx -t检查语法,再执行nginx -s reload重载生效。
Apache环境用.htaccess实现跳转
如果服务器用的是Apache,在旧域名的网站根目录找到或新建.htaccess文件,加入以下规则:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^old\.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www\.old\.com$ [NC]
RewriteRule ^(.*)$ https://www.new.com/$1 [R=301,L]
R=301表示永久重定向,L表示匹配后停止后续规则。
保存后不需要重启Apache,重定向立即生效。
宝塔面板用户的快捷操作路径
不熟悉命令行的用户,可以用宝塔面板完成。
进入网站菜单,找到旧域名对应的站点,点击设置,再点重定向。
- 重定向类型选择
301永久重定向。 - 目标URL填写
https://www.new.com,并在后面加上$request_uri以保留路径。 - 保存后宝塔会自动写入Nginx配置,无需手动编辑文件。
如果面板提示规则冲突,先检查站点是否已有其他重定向规则,逐条禁用排查。
容易踩的坑要提前避开
不要用302代替301。 302是临时跳转,搜索引擎不会转移权重,旧域名的排名不会传递到新域名。
避免重定向链条过长。 比如old.com跳www.old.com再跳new.com,多跳一次就多一次损耗。
最好让旧域名直接跳到最终的新域名地址。
新旧域名不要同时保留两套内容。 如果旧域名还能直接访问内容,搜索引擎会判定为重复内容,反而分散权重。
301之后旧域名的内容应该无法直接打开,只能通过跳转到达新域名。
HTTPS跳转要单独配置。 只配置了HTTP的301,访问旧域名的HTTPS地址时不会跳转,用户会看到证书错误。
怎么验证301是否生效
配置完成后,用以下方式检查:
- 浏览器访问
http://old.com/任意路径,观察地址栏是否变成https://www.new.com/相同路径。 - 用
curl -I http://old.com查看返回状态码,第一行应显示301 Moved Permanently,并带有Location头部指向新域名。 - 在搜索引擎站长平台提交新域名,并保留旧域名的验证记录,方便观察权重转移情况。
权重转移需要时间,通常几周到几个月不等,期间保持新域名内容稳定更新,不要频繁改动URL结构。
常见疑问
旧域名还需要续费吗? 建议至少续费一年。
301重定向依赖旧域名解析生效,域名过期后跳转就会中断,搜索引擎可能来不及完成权重转移。
子域名也要做301吗? 如果旧域名的子域名有独立内容或流量,需要单独配置跳转。
如果没有内容,可以不做处理。
重定向后旧域名的收录会立刻消失吗? 不会立刻消失。
搜索引擎需要重新抓取和评估,旧域名的收录会逐步减少,新域名的收录会逐步增加。
全站301重定向是域名迁移中保留SEO权重最直接有效的方式。
核心动作只有三步:旧域名所有入口都指向新域名对应路径、使用301永久跳转、保持旧域名解析有效。
配置完成后用curl验证状态码,再观察搜索平台的数据变化即可。