日本語ドメインを取得する
日本語ドメインが流行るのかなと思って、とりあえず自分の名前だけは.jpで取っといたんだけど、今んとこ使ってない。
つーかあわてて取らなくても、苗字も名前も珍しいので取られる心配は無いんだろうけど。
しかし、.netと.comも日本語ドメインokになったし、ここのアクセス解析だけでもIE7率がしっかり上がってきたあたりから他にも取ってみるかーと思って、ねじ屋に在籍する俺が調べたところ、「ねじ.net」ってのが空いてたので取っちゃった。
サーバの設定
別に日本語をそのまま扱うわけではなく、PunycodeとかいうASCII文字列に変換して扱う。
てことでbindやらアパッチの設定はこのPunycodeで行う。
余談
PunycodeってのはUTF-8の文字列をASCIIで表す符号化の一つらしいが、「Puny Code」とかではなく「Punycode」で一つの単語らしい。しかも読み方は「パニコード」かと思いきや「ピュニコード」だと。
UTF-8のUnicode(ユニコード)と韻を踏んでるらしい。それを知ってからピュニコードって響きに違和感が無くなったのは不思議。
PunycodeってのはUTF-8の文字列をASCIIで表す符号化の一つらしいが、「Puny Code」とかではなく「Punycode」で一つの単語らしい。しかも読み方は「パニコード」かと思いきや「ピュニコード」だと。
UTF-8のUnicode(ユニコード)と韻を踏んでるらしい。それを知ってからピュニコードって響きに違和感が無くなったのは不思議。
ここで問題になるのは、どーやって任意のマルチバイト文字列をPunycodeに変換するかだけど、細かい仕様は分からんけど、とりあえずそれが出来るコマンドがあるので入手。
Vineの場合、aptでインストール出来るlibidnってのに、入ってるidnってコマンドで変換出来る。
$ apt-cache search libidn
libidn - Internationalized Domain Name support library
$ sudo apt-get install libidn
これで、idnってコマンドが使えるようになるのはいいけど、libidn - Internationalized Domain Name support library
$ sudo apt-get install libidn
$ idn ねじ
libidn 0.5.18
Copyright 2002, 2003, 2004, 2005 Simon Josefsson.
GNU Libidn comes with NO WARRANTY, to the extent permitted by law.
You may redistribute copies of GNU Libidn under the terms of
the GNU Lesser General Public License. For more information
about these matters, see the file named COPYING.LIB.
xn--78jyb
こんなことになる。libidn 0.5.18
Copyright 2002, 2003, 2004, 2005 Simon Josefsson.
GNU Libidn comes with NO WARRANTY, to the extent permitted by law.
You may redistribute copies of GNU Libidn under the terms of
the GNU Lesser General Public License. For more information
about these matters, see the file named COPYING.LIB.
xn--78jyb
正味欲しいのは最後の行だけなんだけども、バージョンだのライセンスだのうるせーうるせー。
こんなもんコマンド実行するたんびに出してどーする。
--quietオプションで静かになるらしいので、
$ alias "idn=idn --quiet"
としてやって、$ idn ねじ
xn--78jyb
解決。
xn--78jyb
あとはふつうのASCIIのドメインと同じように諸々を設定すればいい。
named.confのねじ.netの設定部分
//ねじ.net
zone "xn--78jyb.net" {
type master;
file "xn--78jyb.net.zone";
notify yes;
};
zone "xn--78jyb.net" {
type master;
file "xn--78jyb.net.zone";
notify yes;
};
xn--78jyb.net.zone
$TTL 86400 ; 1 day
@ IN SOA ns0.genkikko.net. admin.genkikko.net. (
2008021101 ; serial
10800 ; refresh (3 hours)
3600 ; retry (1 hour)
604800 ; expire (1 week)
86400 ; minimum (1 day)
)
NS ns0.genkikko.net.
A 58.1.245.163
MX 10 mail.genkikko.net.
www A 58.1.245.163
@ IN SOA ns0.genkikko.net. admin.genkikko.net. (
2008021101 ; serial
10800 ; refresh (3 hours)
3600 ; retry (1 hour)
604800 ; expire (1 week)
86400 ; minimum (1 day)
)
NS ns0.genkikko.net.
A 58.1.245.163
MX 10 mail.genkikko.net.
www A 58.1.245.163
httpd.conf
# ねじ.net
<VirtualHost 192.168.11.6:80>
ServerName xn--78jyb.net
DocumentRoot /home/neji_net/public_html/
</VirtualHost>
<VirtualHost 192.168.11.6:80>
ServerName www.xn--78jyb.net
DocumentRoot /home/neji_net/public_html/
</VirtualHost>
<VirtualHost 192.168.11.6:80>
ServerName xn--78jyb.net
DocumentRoot /home/neji_net/public_html/
</VirtualHost>
<VirtualHost 192.168.11.6:80>
ServerName www.xn--78jyb.net
DocumentRoot /home/neji_net/public_html/
</VirtualHost>
こんなもんかな。
つまり日本語ドメインに対応したブラウザってのは、このマルチバイト文字列とPunycodeの変換をしてくれるってゆーだけなんかな?
余談II
「ねじ.net」を取った時点で「ねじ.jp」も「ねじ.com」も既に取られてたんだけど、「ねじ.net」を取って2日後ぐらいかな?外人らしき人から、「ねじ.com」を199ドルで売りますよーってな英語メールが来た。欲しいけどいらん。高い。およそ2万円も払えるか。(1ドルが何円か知らない。)
「ねじ.net」を取った時点で「ねじ.jp」も「ねじ.com」も既に取られてたんだけど、「ねじ.net」を取って2日後ぐらいかな?外人らしき人から、「ねじ.com」を199ドルで売りますよーってな英語メールが来た。欲しいけどいらん。高い。およそ2万円も払えるか。(1ドルが何円か知らない。)