1

私はこれに関するいくつかの質問を読みました、彼らはutf-8文字を使用rawurlencodeまたはpercent encodingエンコードしますが、私はこのようないくつかの異なる例を見つけます:xn--pbt1by64f.lofter.comそしてhttp://xn--wgv71a.com/、これもブラウザのアドレスバーでutf-8文字列に変換されます(例えば温家宝.lofter.com日本.com)。これは明らかにパーセントエンコーディングではなく、単にurlencode結果でもありません。このエンコーディング方法は何ですか?

4

2 に答える 2

1

これは「Punycode」と呼ばれます。

コンピューティングでは、Punycodeは、Unicode文字の文字列を一意かつ可逆的に小さく制限された文字セットに変換する一般的なエンコーディング構文(Bootstring)のインスタンスです。

Punycodeは、アプリケーションの国際化ドメイン名(IDNA)フレームワークでラベルをエンコードすることを目的としており、これらのドメイン名は、インターネットのドメインネームシステムで許可されているASCII文字セットで表すことができます。エンコーディング構文は、IETFドキュメントRFC3492で定義されています。[1]

http://en.wikipedia.org/wiki/Punycodeから

于 2012-08-11T07:34:37.767 に答える
0

これは国際化ドメイン名と呼ばれます。

そして、phpのIDN関数を確認してください

于 2012-08-11T07:35:50.177 に答える