域名转发, 也被大家叫作网址转发, 它这个操作的意思, 是说当你去访问一个指定的域名了或者是子域名的时候, 系统就会自动地把这个访问请求引导到另一个事先设定好的目标地址上面去, 所以你在浏览器里面输入了那个最初的源域名并且访问之后, 你会发现浏览器顶部的地址栏里面显示出来的是那个跳转之后的目标地址了, 然后咱们最终加载到的那些网页上的实际内容, 它们其实都是从那个最终的目标网站那边过来的。

它是在企业的多品牌运营这种场景里面所使用的, 也适用于域名的升级过渡这样一个过程之中, 同时还能够用在子业务分流这样的一种状况之下, 它是基于此情况下使用频率非常频繁的一个基础类型, 所采用的手段是关于DNS配置或者是关于网站配置的。

一、域名转发的三种常见类型

类型 实现方式 地址栏表现 适用场景
A记录 / CNAME记录转发 在DNS解析层将源域名指向目标IP或目标域名 地址栏保持源域名 需要"隐藏"真实服务器地址,保持品牌统一
301/302 URL转发(重定向) 在Web服务器或托管平台层面返回HTTP 301或302响应 地址栏跳转至目标URL 旧域名迁移、短链接、营销落地页跳转
框架式转发(Frame/Framed) 源域名页面通过iframe嵌套目标页面 地址栏保持源域名 展示内容但保留品牌入口(现已较少使用)

选择哪种类型, 这主要取决于你是否希望让用户看到跳转的过程。如果你需要保留SEO的权重, 那么就优先选择使用301这种永久重定向的方式。如果仅仅是用于内部路由或者说是临时跳转的话, 那就使用302就可以了。

二、设置操作步骤(以主流域名管理平台为例)

1. 登录域名注册商管理后台, 使用像gname.xin这样的平台控制台。然后进入「域名管理」。接着操作「DNS解析」部分。也可以查看转发设置模块的选项。

2. 首先, 你要先确定好你自己打算设置成目标的那个域名到底是哪个, 接着呢, 你再进行下一步操作点选那个叫做「添加转发」的按钮或者是点选「修改解析记录」的按钮。

3. 按照需求的不同去选择对应的类型。

A记录的作用是, 把源域名的地址, 指向到目标服务器所使用的IPv4地址。

CNAME 就是把子域名指向到另外的一个域名里面去, 这里要特别注意一下, CNAME不能用于根域名的地方, 比如那个@符号。

URL转发: 这里需要你填写目标网站的完整网址, 同时还需要从301或者2选1来选择具体的跳转方式, 另外还要确认是否在地址前面加上www这个前缀内容。

4. 在进行保存操作之后, 需要等待DNS生效, 在此期间是TTL周期内, 通常的时间范围是从5到10分钟一直到最大可长达48小时。

5. 用浏览器去访问这个源域名, 然后把跳转的行为确认清楚, 要保证它符合预期。

如果你要使用第三方DNS服务商, 比如说阿里云DNS、Cloudflare之类的, 那么你需要进行的操作入口就在对应服务商所提供的解析管理页面里, 而且整个操作的逻辑也是一致的。

域名转发怎么设置?与重定向的区别、操作步骤及注意事项(图1)

三、域名转发 vs URL重定向:核心区别

转发(Forwarding)这一过程是在DNS层面完成的, 或者也可以在注册商层面完成。它并不依赖于目标服务器所提供的Web服务。即便目标站点出现了宕机的情况, A记录仍然可以被解析为相应的IP地址。

重定向(Redirection) 这一行为, 是必须由目标的那个Web服务器, 去返回301或者302这样的状态码, 如果这个目标服务器本身是不可用的那种情况, 那么那个跳转的过程, 就一定会失败。

从SEO的层面来进行分析, 使用301重定向这种方式的话, 它能够传递过来大约90%甚至更多的站点权重, 至于DNS层面的那个A记录或者是CNAME记录, 这些记录本身是不会直接传递任何针对SEO的权重的, 如果想要获得好的效果, 就必须得配合上目标站点的整体搜索引擎优化策略才行。

四、常见误区与注意事项

误区1:CNAME和MX记录冲突。 对于同一个主机名来说, 它是不可以在同一时刻既存在CNAME记录, 又存在MX或者NS这样的其他记录的, 所以在进行配置操作之前, 必须先把这个情况确认清楚。

误区二,就是把301和302混合使用,这种做法是不对的。 如果说你的最终目标是实现网站的永久迁移, 那么, 你就必须得去使用301这个跳转的状态码, 这是没得商量的。然后呢, 要记住一点, 302代表的是临时跳转, 这种情况下, 搜索引擎是不会帮你进行长期缓存的, 它会认为这只是个暂时的情况。

注意SSL证书: 如果你的目标站点是启用了HTTPS的这种情况, 那么, 关于源域名发出的转发请求这一件事情, 很有可能会因为证书不匹配这个原因去触发浏览器的安全警告, 所以, 你必须在证书当中把源域名配置成SAN也就是Subject Alternative Name这个东西, 这样才能解决问题。

TTL和生效时间的关系是这样的: 等你修改DNS记录的时候, 建议大家提前做好一个操作, 就是把TTL的时间长度调到尽可能小的数值方面, 就像300秒这样, 通过这样做, 能够让这次变更的内容更快速地开始起作用。

五、选型建议

让品牌的域名能够统一地进行展现, 并且把真实的IP地址给隐藏掉, 这个操作是可以通过设置A记录或者是CNAME记录来实现的。

如果旧域名要永久迁移到新域名的时候, 那就必须使用 301重定向。

在进行营销活动的时候, 如果需要临时做页面的跳转操作, 或者是为了开展A/B测试, 就采用了302重定向这种方式。

在配置完成以后, 大家最好是用dig这个工具, 还有nslookup这个工具, 再或者用那个在线的DNS检测的这个工具去进行验证, 目的是要把解析的结果给核实清楚, 来确认转发链路是没有中断的。