重定向全站旧域名跳转新域名实操:重定向全站旧域名跳转新域名实

当网站更换域名时,如果不做301重定向,旧域名的流量和搜索引擎权重会直接归零。
301重定向全站旧域名跳转新域名,就是把所有旧域名的访问请求永久指向新域名,告诉搜索引擎和用户:这个页面已经永久搬家了。
本文面向零基础用户,以Nginx、Apache和宝塔面板为例,给出可照做的配置步骤,并说明如何验证跳转是否生效。

动手前需要确认的三件事

开始配置前,请先确保以下条件已经满足,否则跳转可能失败或导致网站无法访问。

  • 旧域名和新域名都已解析到同一台服务器,或者新域名已解析到目标服务器,旧域名仍指向原服务器。如果旧域名无法访问,跳转配置也不会生效。
  • 网站程序已经在新域名上部署完成,包括数据库、静态文件、SSL证书等。不要在新站还没搭建好时就做跳转,否则用户会被引导到错误页面。
  • 确认服务器上使用的Web服务器类型,是Nginx、Apache还是其他。下面会分别给出配置方法,你可以根据自己的环境选择。

Nginx环境下配置全站301跳转

如果你的服务器使用Nginx,有两种常见做法:在网站配置文件中添加return 301,或者使用rewrite规则。
推荐前者,效率更高且不易出错。

方法一:修改旧域名的server块

打开旧域名对应的Nginx配置文件,通常路径是/etc/nginx/conf.d/old-domain.conf或/www/server/panel/vhost/nginx/old-domain.conf(宝塔面板路径)。
在server块内添加一行:

server {
    listen 80;
    server_name old.com www.old.com;
    return 301 https://www.new.com$request_uri;
}

如果新域名启用了HTTPS,
把http:
//
换成https:
//
,
并确保新域名已经配置了SSL证书。$request_uri会保留原始请求的路径和参数,
例如访问old.com/about会跳转到new.com/about。

方法二:使用rewrite规则(适合需要条件判断的场景)

如果只想对特定路径跳转,或者需要根据条件判断,可以用rewrite:

server {
    listen 80;
    server_name old.com www.old.com;
    rewrite ^(.*)$ https://www.new.com$1 permanent;
}

permanent表示301永久重定向。
修改后执行nginx -t测试配置,然后nginx -s reload重载生效。

Apache环境下配置301跳转

Apache通常通过.htaccess文件或虚拟主机配置实现。
如果旧域名站点根目录下有.htaccess文件,加入以下内容:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^old\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.old\.com$ [NC]
RewriteRule ^(.*)$ https://www.new.com/$1 [R=301,L]

如果使用虚拟主机配置文件(如/etc/httpd/conf.d/old.conf),可以在内添加:

Redirect 301 / https://www.new.com/

注意:Redirect指令会跳转所有路径到新域名的根目录,如果希望保留路径,建议使用RewriteRule。
修改后重启Apache:systemctl restart httpd或service apache2 restart。

宝塔面板用户的可视化操作

如果你使用宝塔面板,可以不用手动改配置文件。
登录宝塔后台,进入“网站”列表,找到旧域名对应的站点,点击“设置”。

  • 在“域名管理”中,可以添加新域名并设置跳转,但宝塔自带的跳转功能通常针对单个域名,全站跳转建议用“配置文件”修改。
  • 点击“配置文件”,会打开当前站点的Nginx或Apache配置。参照上文Nginx或Apache的示例,在server块内加入return 301或rewrite规则。
  • 保存后,宝塔会自动重载Web服务。如果提示错误,检查语法,常见问题是缺少分号或括号不匹配。

对于SSL证书,如果新域名已部署HTTPS,旧域名也建议保留证书或至少确保80端口跳转到新域名的HTTPS,避免浏览器提示不安全。

避开这些常见坑

配置301重定向时,有几个高频错误容易导致跳转失败或循环重定向。

  • 跳转循环:如果新域名的配置中也包含了跳转到旧域名的规则,就会形成死循环。检查新域名配置,确保没有反向跳转。
  • 路径丢失:使用return 301 https://new.com不带$request_uri,所有页面都会跳到首页,导致内页权重丢失。务必加上$request_uri或$1。
  • HTTPS混合:如果旧域名是HTTP,新域名是HTTPS,跳转后浏览器可能拦截混合内容。建议旧域名也配置SSL,或者直接跳转到HTTPS地址。
  • 未测试就上线:修改配置后,先用curl -I http://old.com查看返回状态码,确认是301且Location指向正确的新域名。

验证跳转是否生效

配置完成后,可以通过以下方式验证:

  • 命令行执行curl -I http://old.com,观察返回的HTTP状态码是否为301,以及Location头部是否指向新域名。
  • 浏览器访问旧域名的任意内页,比如old.com/contact,看是否自动跳转到new.com/contact。
  • 使用在线HTTP状态码检查工具,输入旧域名,确认返回301而不是302或200。
  • 观察搜索引擎收录变化:301生效后,搜索引擎会逐渐将旧域名的权重转移到新域名,但这个过程需要时间,通常几周到几个月不等。

常见疑问

问:301和302跳转有什么区别?
301是永久重定向,搜索引擎会将旧域名的权重传递给新域名;302是临时重定向,权重传递不明显。域名迁移必须用301。

问:配置后多久生效?
Nginx或Apache重载后立即生效,但浏览器和搜索引擎可能有缓存。可以用无痕窗口或curl测试,搜索引擎更新则需要更长时间。

问:旧域名还需要保留吗?
建议保留至少一年,确保所有流量和权重平稳过渡。如果旧域名不再续费,跳转也会失效。

问:子域名如何跳转?
子域名跳转与主域名类似,在旧子域名的server块中配置return 301指向新子域名即可。如果子域名很多,可以用泛解析配合正则匹配。

完成以上步骤后,你的全站301重定向就已经配置好了。
记得定期检查跳转状态,确保没有遗漏的页面。
如果在操作中遇到报错,优先回看避坑部分,检查配置语法和路径是否正确。

分享到:
上一篇
爬虫识别与封禁,区分搜索引擎爬虫:爬虫识别与封禁
下一篇
canonical标签批量添加,CMS模板修改
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意