域名跳转重定向软件这个事物的核心功能, 主要是把一个域名的访问流量, 给自动地转发到指定的目标地址上面去。它典型的用途, 可以是在旧站迁移的时候用一用, 也可以是在品牌域名升级的时候用一用, 当然还可以用于多域名的流量归集。当用户在挑选和选择这类软件的时候, 需要把重点放在考察这四项指标上。

第一项指标是看它支持的重定向类型有哪些,比如是不是支持301、302、307或者308这些代码。第二项指标要考量配置起来难不难域名跳转重定向软件, 门槛是高还是低。第三项指标要看解析之后的生效速度有多快。第四项指标则是看它能不能和自己现在用的DNS服务商还有CDN进行兼容。

现在大家用得最多的域名跳转重定向软件, 可以按照它们是怎么装上去的方式, 分成四种类型。头一种类型是那些服务器控制板里自带的功能模块, 比方说宝塔面板、cPanel和Plesk这些软件。

这些软件的操作性很简单, 你看它的操作界面是清清楚楚的, 你只要进入后台管理, 把需要跳转的来源网址和目标网址填进去, 这个设置马上就会起作用, 这种方式特别适合那种专门管技术运维的人手不多的小网站使用。

第二种是Web服务器本身自带的配置方法, 这是通过Nginx里面的return或者rewrite指令来实现的, 或者是用Apache里面的.htaccess文件和mod_rewrite模块来实现, 它的灵活性是最高的, 可以支持条件跳转, 还可以支持正则匹配这种高级规则, 但是需要编写配置文件。

有一类方法是域名服务商提供给我们的一个在线跳转功能。在一些像 gname.xin 这样用来管理DNS的平台上是支持这么做的。它们允许你直接去添加一条 CNAME 记录, 或者说是要设定一个HTTP跳转规则。好处是不用去登录服务器。改动做好了以后, 你可以直接在浏览器里面进行验证和查看结果。

还提到第四种情况叫做批量重定向管理的中间件。这种工具主要是给那些中大型企业运维人员使用的。因为这类企业经常需要同时去管理几百个或者上千个域名跳转规则的时候就可以用到它了。

域名跳转重定向软件怎么选?免费与付费工具对比及配置方法(图1)

以最经常能遇到的301永久跳转的情况来作为例子, 标准的设置步骤是这样安排的。

第一步, 去确认目标地址已经正常上线了, 并且它的响应状态码是200;第二步, 在Nginx的配置信息里面添加一个对应的server块, 然后在里面写入“return 301 https://目标域名$request_uri;”这一段内容;第三步, 执行nginx -t这个命令来检查语法没有问题之后, 运行systemctl reload nginx使得新规则生效;第四步, 使用curl -I http://原域名这个指令去验证一下, 检查结果要在响应头中包含“301 Moved Permanently”以及带有正确值的Location字段。

如果要采取那种名叫DNS面板的办法, 那么就得给原来的域名加上一条CNAME记录, 把这条记录指向那个目标域名,然后等着看全网的DNS缓存刷新灵音心图, 这事情一般需要大约5小时到48个小时才会真正生效。

对于高频出现的疑难问题来说, 核心观点在于301与302之间的主要差异体现在搜索引擎会不会把所有的权重都完整地转移到新的地址上面去, 所以在进行站点迁移的时候, 必须要采用301这个方式来实现跳转的功能, 而在完成跳转之后, 旧的URL路径是否能够继续保留下来, 这完全取决于目标服务器那边有没有专门设置和配置相应的路由信息,另外在多域名的这种复杂场景下需要特别小心去防范发生循环跳转的那种情况域名跳转重定向软件, 比如域名A跳转到B域名, 然后B域名又再次跳回A域名这种死循环的状态, 建议大家使用浏览器的开发者工具里面的Network面板来对相关的请求进行逐一详细的排查和检查。

在执行跳转操作之前, 大家务必要先把原始的配置文件备份好, 这样做是为了防止因为误操作而导致整个网站瘫痪停机。

当需要进行批量变更的时候, 应该先拿单个域名来做灰度验证, 确认没有任何异常情况之后, 再向全网进行推送。选型这件事是没有所谓的绝对最优解的, 能够和自己的技术栈以及运维规模相匹配的方案, 就是最佳的方案。