短链接自定义域名:完整接入与配置指南
- domains
- link-shortener
- marketing
本页内容
- 短链接上的域名为什么重要
- 认出你,发生在点击之前
- 共享域名背的是别人的声誉
- 拥有权才是迁移得以成立的前提
- 怎么挑这个域名
- 短,就是全部要点
- TLD 的选择会带来实际后果
- 能拿到几个域名,是一条实打实的限制
- 你实际要创建的那几条 DNS 记录
- 子域名用一条 CNAME
- 根域名用一条 A 记录
- 一条证明域名属于你的 TXT 记录
- 自动 TLS,不必踩续期跑步机
- 证书是怎么签发出来的
- 把校验一次性委托出去
- 一套健康的接入流程是什么样的
- 会让线上链接失效的 DNS 错误
- 给记录开代理,以及 Flexible 模式下的循环
- 遗留记录与冲突记录
- 把签发机构排除在外的 CAA 记录
- 变更前夕才设了一个很高的 TTL
- 注册商的停放页与转发
- 印出去之前,先验证整条链路
- 从头到尾的接入步骤
短链接是一句关于「这一次点击会落到哪里」的承诺,而域名是这句承诺里唯一能在人做决定之前被读到的部分。bit.ly/3xKqR2p 这样一串字符,完全说不出是谁在发出邀请;go.yourbrand.com/spring-sale 则同时讲清了是谁、要做什么。正是这道差距,让绝大多数认真对待链接的团队最终都会离开共享域名,也正是这件事常常卡在半路:它是一个披着营销外衣的 DNS 项目,而它的故障形态,对提出这个需求的人来说完全陌生。
这份指南覆盖整条路径:怎么挑域名,子域名和根域名各自需要哪些确切的记录,归属验证与证书签发到底是怎么跑起来的,哪几个 DNS 错误制造了绝大多数坏掉的配置,以及在把链接印到无法召回的包装上之前,该如何验证一条已经完工的跳转链路。
短链接上的域名为什么重要
认出你,发生在点击之前
每一条链接都是一次在大约一秒钟内做出的小小信任判断。在共享的短链接域名上,读者手里根本没有任何信息:那个主机名属于一项被数百万人使用的服务,而其中一些人这一周正在跑钓鱼活动。带品牌的主机名,把「猜」换成了「事实」。
各家厂商都会公布带品牌链接带来的点击率提升数字;把它们当作方向性参考就好,因为这类对比很少是同等条件下的比较。真正经久不变的是背后的机制:在那些 URL 看得见却点不动的渠道里——印刷品、二维码旁边的说明文字、被剥掉预览的短信——主机名几乎就是读者能依据的全部。
共享域名背的是别人的声誉
这才是更锋利的那条理由。在共享域名上,你的链接继承的是一份你无法掌控的声誉。邮件过滤器、企业代理、即时通讯工具的链接扫描器和浏览器安全计划,都是按主机名这个粒度做判断的,因此同一域名下与你毫无关系的账户掀起的一波垃圾内容,落到你的营销活动头上就是一张警告中转页,或者一次无声的拦截。
自己拥有的域名把这层关系反了过来。声誉是你的,由你自己的流量积累而成,陌生人再也伤不到它。与之对应的义务也一样明确:从此这个域名下发布的一切,后果都由你承担——如果你要把链接转售给别人,这正是必须把滥用治理和逐用户的链接可见性放在心上的理由。
拥有权才是迁移得以成立的前提
你掌控的域名是一个永久地址:换平台时你只需把一条记录改指向别处,上个季度包装上的码照样解析得出来。发布在厂商的共享域名上,则等于让每一件印刷物都被那家厂商的定价扣作人质。白标模式背后的道理,与此完全相同。
怎么挑这个域名
短,就是全部要点
短链接存在的意义就是短。主机名里每多一个字符,slug 就少一个字符可用,而主机名里的字符正是人们要念出口、从海报上敲进去、或者塞进一条短信里的那些。一个好用的目标是:整条链接的长度要能舒服地放进印刷的一行——主机名大致 10 到 15 个字符,加上一个 5 到 12 个字符的 slug。
| 形态 | 示例 | 最适合 | 取舍 |
| --- | --- | --- | --- |
| 主域名的子域名 | go.yourbrand.com | 快速上线、自有渠道、邮件 | 三者之中最长 |
| 短 TLD 上的品牌缩写 | yrbrnd.co | 短信、印刷、包装 | 需要新注册一个域名,辨识度略低 |
| 主题 TLD 上的完整品牌名 | yourbrand.link | 营销活动主页、二维码 | 需要配置根域名,TLD 声誉参差不齐 |
TLD 的选择会带来实际后果
各类顶级域名在过滤器眼里并不平等。廉价和促销型的 TLD 垃圾内容密度很高,某些企业邮件网关对此的处理相当粗暴。那些被当作单词结尾来用的国家代码 TLD——.co、.io、.to 和 .ly 都出自这一家族——归属于各自的注册局,各有各的政策和续费成本。注册之前,请核对续费价格而不是首年价格、有没有针对注册人的限制,以及你要发布的那些渠道到底会不会把这个后缀自动识别成链接。
能拿到几个域名,是一条实打实的限制
各家厂商的域名额度差得非常远,而只要你手上不止一个品牌或一位客户,这条限制立刻就会咬人。截至 2026 年 8 月,Short.io 连免费档都包含五个自定义域名;Rebrandly 在各付费档位上分别给 1、2、3 和 10 个;BL.INK 起步价每月 48 USD,只含一位用户和一个域名。LinkProfit 的 Starter 每月 49 USD 包含三个跳转域名,Scale 则是三十个。如果你在替客户管理链接,请按一年之后需要多少个域名来数,而不是按这个月。
顺带值得在同一轮里核对的还有证书覆盖范围。截至 2026 年 8 月,Cutt.ly 的 Let's Encrypt 证书自动签发要从每月 25 USD 的 Single 套餐才开始提供,这意味着在它以下的档位上,自定义域名并不能完整地跑在 HTTPS 上。完整的功能对比在我们的自定义域名页面上。
你实际要创建的那几条 DNS 记录
三条记录几乎覆盖了所有配置:一条负责路由流量,一条负责证明归属,一条负责把证书校验委托出去。至于路由记录该用哪一种,取决于你选的是子域名还是根域名。
子域名用一条 CNAME
这是常规路径,也是推荐的那一条。子域名指向平台持有的一个主机名,由平台的 edge 网络替它应答。
Type Name Value TTL Proxy
CNAME go cname.linkprofit.com 300 DNS only
有两个细节最容易绊倒人。多数 DNS 面板要求填写相对于区域的名称,也就是 go 而不是 go.yourbrand.com,但也有少数要求填完全限定的形式,填错的那一种会悄无声息地造出一个 go.yourbrand.com.yourbrand.com。另外,如果你的 DNS 托管在 Cloudflare,这条记录必须保持不代理,面板上把这个状态叫作 DNS only;原因写在下面讲错误的那一节里。各家厂商的目标主机名各不相同,但形状是一样的:截至 2026 年 8 月,Short.io 用的是 cname.short.io,Rebrandly 用的是 registrar.dedicated.domains。主流注册商的逐步截图,在 CNAME 接入文档里。
根域名用一条 A 记录
DNS 不允许在区域的根上使用 CNAME,因为根上还必须承载 SOA 和 NS 记录,而 CNAME 无法与同名的其他记录共存。所以 yourbrand.link 本身不能是一条 CNAME。出路有两条。
第一条是服务商侧的 flattening,市面上叫作 ALIAS、ANAME 或 CNAME flattening:由 DNS 服务商去解析那个目标,再用解析出的地址来应答。Cloudflare、DNSimple、Namecheap、Porkbun、DNS Made Easy、easyDNS、NS1、Bunny、Azure DNS 和 Google Cloud DNS 都支持它。Route 53、GoDaddy、IONOS 和 Network Solutions 则不对自家生态之外的目标提供这项能力。
第二条是用一条 A 记录,指向平台签发给你的入口 IP 地址。下面这些地址取自文档专用地址段,只是示意;请使用你的控制台上显示的值。
Type Name Value TTL
A @ 203.0.113.10 300
AAAA @ 2001:db8::10 300
CNAME www cname.linkprofit.com 300
即使你从不发布带 www 的链接,也请把 www 那条记录加上:人们会出于习惯敲上它,而一个没人应答的 www 给出的是连接错误,而不是一次跳转。根域名的具体细节,包括各家服务商在根记录上分别显示什么标签,都写在根域名文档里。这些地址各家厂商都是公开的:截至 2026 年 8 月,Short.io 文档里给的是 207.174.61.1,Rebrandly 给的是 52.72.49.79——这是一个有用的旁证,说明这条路径属于标准做法,而不是什么偏门。
一条证明域名属于你的 TXT 记录
如果没有归属证明,任何人都可以在一个共享平台上认领 go.yourbrand.com,并在你创建 CNAME 的那一刻起接走本该属于你的流量。因此平台会签发一个令牌,并在开始提供服务之前先核验它。
Type Name Value
TXT _linkprofit-verify dom_2f7a91c4be0d3856
这个令牌与你的域名记录一一对应。主机名生效之后,这条记录可以一直留着;删掉它并不会让一个已经生效的域名坏掉,但留着它能避免重新验证时出意外。
自动 TLS,不必踩续期跑步机
证书是怎么签发出来的
你的平台需要一张对它并不拥有的主机名有效的证书。而 ACME——也就是 Let's Encrypt 背后的那套协议——被造出来要自动化的,恰恰就是这件事:平台为 go.yourbrand.com 申请证书,证书颁发机构下发一道校验挑战,平台通过应答它来证明自己拥有控制权。校验一旦通过,域名验证型证书在几秒之内就会签发出来,而且不花一分钱。
真正重要的性质是有效期。现代证书在设计上就是短命的,所以签发并不是一个做完就结束的接入步骤。它是一条只要域名还接着就一直在跑的续期循环,覆盖系统里的每一个域名。
把校验一次性委托出去
让这条循环彻底隐形的稳妥做法,是把校验委托出去。你在校验用的那个名称上创建一条 CNAME,指向平台掌控的一个委托目标,此后每一次续期都由平台代为应答,你什么都不用做。
Type Name Value
CNAME _acme-challenge.go the delegation target shown in your dashboard
另一种做法——每个续期周期粘贴一个新的 TXT 值——能一直管用,直到那位日历提醒的主人换了工作为止。如果某家厂商的接入流程要求周期性的人工校验,请把它当作一次已知的未来故障,而不是一点小麻烦。
一套健康的接入流程是什么样的
你应该看到三个明确的状态,以及它们之间的自动流转:记录还观察不到时是「等待 DNS」,一旦观察到就变成「等待证书」,可以承接流量时变成「已生效」。重新检查应当以大约一分钟的节奏自动进行,而不是只在你点按钮时才跑;界面也该告诉你到底缺的是哪一条记录,而不是丢出一个笼统的失败提示。在一个干净的区域上、TTL 又设得较低时,端到端的典型耗时是几分钟。
会让线上链接失效的 DNS 错误
给记录开代理,以及 Flexible 模式下的循环
这是托管在 Cloudflare 上的区域里最常见的一种故障。点亮那朵橙色的云,等于在一个已经为该主机名终止 TLS 的平台前面,再放一个 TLS 终止点。当加密模式设为 Flexible 时,代理以明文 HTTP 连接源站,源站回一个跳到 HTTPS 的跳转,代理把它转回浏览器,浏览器就这样一直循环,直到放弃。Rebrandly 在自家文档里也向用户说明过这个冲突;它是这套配置本身的性质,而不是某一家厂商的毛病。除非你有明确的理由,否则请让这条记录保持不代理;如果非代理不可,就把加密模式设为 Full strict。
遗留记录与冲突记录
一个曾经指向别处的子域名,通常还留着一条 A 记录,而同一个名称不能同时持有 CNAME 和其他类型的记录。有些面板会用一条清楚的错误信息拒绝第二条记录,另一些则照单全收,结果是时灵时不灵的解析。在添加任何东西之前,请把这个名称下已有的每一条记录都列出来,把过时的删掉。通配符记录也要留意:区域里的一条 * 记录会在没有显式记录时替 go 应答,于是一条根本不存在的 CNAME 看上去就像在正常工作。
把签发机构排除在外的 CAA 记录
如果你的区域发布了 CAA 记录,它们会限定哪些证书颁发机构可以为这个区域签发证书。一个被锁定在某家商业 CA 上的区域,会悄无声息地挡住 Let's Encrypt 的签发,而这种失败表现出来的样子,是证书永远不出现。要么把你的平台所用的签发机构加进去,要么把这个主机名上的限制去掉。
变更前夕才设了一个很高的 TTL
TTL 是你对各级解析器许下的承诺:旧答案还能算数多久。改一条 TTL 为 86400 的记录,有些解析器会把上一个值留整整一天。请在计划切换的至少一天之前把 TTL 降到 300,等新配置验证通过之后再调回去。
注册商的停放页与转发
刚注册的域名往往一上手就带着停放页、URL 转发,或者注册商预置的默认记录。其中转发的干扰方式尤其像是平台的 bug,因为请求还没走到你的跳转引擎,注册商就先把它应答掉了。请明确地把它关掉,而不是想当然地以为一个新域名就是干净的。
印出去之前,先验证整条链路
解析和跳转是两个彼此独立的问题,所以两边都要查。
dig +short go.yourbrand.com CNAME
dig +short go.yourbrand.com A
curl -sSI https://go.yourbrand.com/spring-sale | grep -i -E 'HTTP/|location'
curl 的输出应当显示一个跳转状态码,后面跟着一个直接指向最终目标地址的 location 头。有两件事要看。第一是跳数:每多一跳就多一次往返,还会稀释来源数据,因此一条在抵达目标之前先穿过某个跟踪域名的链路,应该被压平。第二是目标 URL 必须与你配置的完全一致,包括 UTM 参数——因为一个自身还要跳转的目标地址,无论是从 http 跳到 https,还是从根域名跳到 www,都会凭空多出一跳。
同样的检查请在根域名和 www 形式上各跑一遍,http 和 https 都要覆盖;如果目标地址会按设备分流,再用一个移动端 user agent 跑一次。不想开终端的话,我们的链接检查工具会把整条链路展开,逐跳显示状态码——在转发竞品或合作伙伴的链接之前,这也是最快的核查方式。最后,点开一条你自己的链接,确认这次事件出现在数据分析里:一个解析正常、跳转也正常,却什么都不记录的域名,通常意味着流量抵达的源站和你以为的并不是同一个。
从头到尾的接入步骤
- 注册或选定域名,并确认续费价格与注册局的各项限制。
- 把你即将替换的每一条记录的 TTL 调低,最好提前一天。
- 在你的短链接平台里添加这个域名,并原样抄下它显示的那几条记录。
- 创建路由记录:子域名用 CNAME,没有 flattening 的根域名用 A 和 AAAA。
- 创建证明归属的 TXT 记录,以及那条委托校验的 CNAME。
- 如果你的 DNS 在 Cloudflare,确认路由记录没有开启代理。
- 删掉同名下过时的记录,并检查有没有会遮住它的通配符记录。
- 等状态经过「等待证书」走到「已生效」,然后用
dig和curl验证。 - 测试根域名、
www、http和https,再加上一个移动端 user agent。 - 创建一条正式链接,点开它,确认这次点击被记录下来。
- 把 TTL 调回去,并写清楚域名续费由谁负责。
在一个干净的区域上,这里的大部分工作十五分钟就能做完。例外有两种:一是服务商不支持 flattening 时的根域名,它必须走 IP 那条路;二是积攒了好几年记录的区域,那里的活儿是删,而不是加。
对一个链接体系来说,带品牌的域名是能买到的最便宜的一次可信度升级;一旦接入完成,这套技术栈的其余部分就跑在你早已掌控的基础设施上。如果你是在替客户而不是替自己接域名,那么「每位客户各有自己的域名」正是让这份服务站得住脚的关键:额度在各个套餐之间如何分配,请看自定义域名。
大家常问的问题
我可以用 yourbrand.link 这样的根域名做短链接吗?
可以,但 DNS 路径不一样。区域的根上不允许存在 CNAME,因此你要么选择一家提供 CNAME flattening 或 ALIAS 记录的服务商,要么把一条 A 记录指向平台签发给你的入口 IP 地址。Cloudflare、DNSimple、Namecheap、Porkbun、DNS Made Easy、easyDNS、NS1、Bunny、Azure DNS 和 Google Cloud DNS 支持 flattening 或 ALIAS;Route 53、GoDaddy、IONOS 和 Network Solutions 不对自家生态之外的目标提供这项能力,所以这些区域只能走 IP 那条路。
一个自定义域名要多久才能开始工作?
要等的是两件事叠加在一起。第一件是 DNS 生效,它取决于你所替换记录的 TTL 以及各级解析器的缓存:TTL 本来就低时通常是几分钟,否则最长可能要一天。第二件是证书签发,它在记录变得可见之后开始,正常情况下十分钟内完成。做得好的控制台会自动重新检查,而不是逼着你反复去点那个验证按钮。
我需要为自己的短域名购买 SSL 证书吗?
不需要。证书由承载跳转的那个平台通过 ACME 自动签发,不额外收费,也会自动续期。真正要紧的是续期模式:只要在校验记录上用一条 CNAME 把校验委托出去一次,此后每一次续期都不再需要你碰 DNS。如果某家厂商要求你每隔几个月粘贴一条新的校验记录,那就不是一个接入步骤,而是一次已经排好期的故障。
我该用主站的子域名,还是单独注册一个短域名?
像 go.yourbrand.com 这样的子域名上线更快,不需要额外花钱,还能直接继承人们本来就认识的那个域名的信任度。单独的短域名更短,这在短信和印刷物上很要紧,同时也把链接声誉与主站隔离开。不少团队两个都用:自有渠道用子域名,每一个字符都要计较的营销活动用短域名。
为什么我打开 Cloudflare 代理之后链接就坏了?
给记录开启代理,等于在一个已经为该主机名终止 TLS 的平台前面,再放一个 TLS 终止点。在 Flexible 模式下,代理以明文 HTTP 连接源站,源站回一个跳到 HTTPS 的跳转,请求就这样一直绕圈,直到浏览器放弃。Rebrandly 在自家文档里也向客户说明过这个冲突。解决办法是让这条记录保持不代理;如果你确实有理由把代理留在链路上,就把加密模式改成 Full strict。
如果我以后更换短链接平台,已有的链接会怎么样?
因为域名是你自己的,去向的控制权也始终在你手里:把 CNAME 或 A 记录改指向新的服务商,导入你的 slug 与目标地址对照表,已经印出去的码照样能解析。切换过程中有两件事需要留神。slug 必须在 DNS 变更之前先创建好,新服务商也必须在流量到达之前为这个主机名签发好证书——正因如此,分阶段切换才会提前一天把 TTL 调低。