tools / punycode
punycode/
中文域名和 xn-- 开头的 Punycode 互相转换。每行一个域名或网址,可以批量粘贴。
域名
Punycode
常见问题
Punycode 是什么,中文域名为什么会变成 xn-- 开头
域名系统(DNS)只认英文字母、数字和短横线。Punycode 把中文、日文这类字符编码成这几种字符,再在前面加上 xn--,例如 中文.com 就是 xn--fiq228c.com。浏览器地址栏显示中文,但真正发出去查询和请求的是 xn-- 这一串。
配置 DNS 解析、Nginx 或 SSL 证书时,中文域名该填哪种
多数后台和配置文件要填 xn-- 形式:DNS 记录、Nginx 的 server_name、证书申请里的域名都是这样。少数平台的后台可以直接填中文,它们会自己转换。拿不准时填 xn-- 形式最稳。
能直接粘贴整个网址吗
可以,每行一个。工具只转换主机名部分,协议、用户名、端口、路径和参数原样保留。路径和参数里的中文不会被转换,那部分用的是百分号编码,可以用本站的 URL 编解码工具处理。
为什么转换后字母都变成了小写,全角字符也不见了
域名不区分大小写,所以先统一转成小写。全角字母、全角数字会先换成普通写法,中文句号「。」和全角句点也当作分隔的点。这样 中文。COM 和 中文.com 会得到同一个结果。
提示「超过域名每段 63 个字符的上限」是什么意思
DNS 规定域名里每一段(两个点之间的部分)最多 63 个字符,整个域名最多 253 个字符,这里按转换后的 xn-- 形式计算。汉字越多、越不重复,转换后越长,超过上限的域名无法注册和解析。
还原时提示「不是有效的 Punycode」怎么办
说明 xn-- 后面的内容不符合编码规则,常见原因是复制时少了几个字符,或者混进了空格、引号这类字符。只有以 xn-- 开头的那一段会被还原,其他段原样输出,所以可以整行粘贴,出错的行会在下方标出行号。
转换结果和其他工具不一样,以哪个为准
以浏览器为准。本工具对常见的中文、日文、俄文、希腊文和德文域名,结果都和浏览器地址栏的处理一致。比如德语的 ß 会保留并编码成 xn--zca,而一些按旧规则处理的工具会把它改成 ss,得到不同的域名。
输入的域名会发到服务器吗
不会。转换全部在浏览器里完成,页面不会把输入的内容发给任何服务器,也不会查询这个域名是否已注册。