1

我阅读了一些关于此的问题,他们使用rawurlencodeorpercent encoding对 utf-8 字符进行编码,但我发现了一些不同的示例,例如:xn--pbt1by64f.lofter.com并且http://xn--wgv71a.com/,这也将在浏览器地址栏中转换为 utf-8 字符串(例如温家宝.lofter.com日本.com)。这显然不是百分比编码或简单urlencode的结果,这种编码方法是什么?

4

2 回答 2

1

它被称为“Punycode”:

在计算中,Punycode 是通用编码语法 (Bootstring) 的一个实例,通过它可以将一串 Unicode 字符唯一且可逆地转换为较小的受限字符集。

Punycode 旨在对应用程序中的国际化域名 (IDNA) 框架中的标签进行编码,以便这些域名可以用 Internet 域名系统中允许的 ASCII 字符集表示。编码语法在 IETF 文档 RFC 3492 中定义。 [1]

来自http://en.wikipedia.org/wiki/Punycode

于 2012-08-11T07:34:37.767 回答
0

这称为国际化域名

并检查 php 的IDN Functions

于 2012-08-11T07:35:50.177 回答