I’ve been wanting a Chinese domain for a while. Not a .cn mind you, but a URL that was in Chinese – like http://大猪网.com or what have you.
I’ve looked into it on and off for a year or so, and finally decided to give it a go. I wanted to see if it was possible, how well it was supported DNS wise, if any services supported it, and how well browsers stood up.
First a quick gotcha to lookout for. You may or may not know that in theory UTF-8 encoded URLs can be a bit dangerous. What’s to stop some one from registering “http://wellsfargο.com”. That o is actually a Greek letter omicron Unicode 03BF. Unless you are using an older version of windows (which, in my experience doesn’t have very good Unicode support by default), you probably can’t tell that is not a normal “o”. I wouldn’t be able to. [1]
The other problem, from what I can deduce, is a lot of the systems out there only do ASCII or ISO-8859-1 style encoding. Think of an old HP3000, Windows box, or some other old yet still working system hanging on the net. They likely only can handle old style encodings, but still need to work.
To fix the encoding problem “they” decided to come up with a way to map more worldly Unicode characters to ASCII using something called IDNA.
In practice what this mean is that the unicode domains you might register will run though some algorithms called ToASCII and ToUnicode to resolve and display. (You’ll often have to use a special area to register a unicode style domain too).
For example, you can type in http://小罗.com into a modern browser and it will work. However, the browser is actually asking DNS to find the IP for the address http://XN–YETY43F.COM. The XN– part is the part that denotes a Punycoded URL.
When setting up DNS, apache, and what not you’ll be using something like the XN– URL. For example, I use godaddy.com which, awesomely, supports Punycoded URLs. It even has an “International” view which shows the URL rendered in Unicode:
Setting up Apache to answer the call is just as you would expect. You simply use the xn-- version as the server alias (or whatever you usually do):
Browser support seems to be a bit spotty currently. I tried both Safari 4 and Firefox 3 on the Mac. While both figured out what I wanted, and resolved correctly, only Safari left the URL as I typed it. Firefox switched to and stayed the xn-- URL (which behaviour is correct I leave for you to decide).
I also setup Google Apps with the domain to see how well it faired. I had to use the xn-- URL to sign up for the account because using the 小罗.com version “contained invalid characters”, but the account was created and so far mostly works. URLs like “http://sites.google.com/a/小罗.com” throw an error, but the “http://sites.google.com/a/xn--yety43f.com” version works as you would expect.
When I get more time to play I am going to setup Gmail to see if that will let me use the proper Chinese domain version for my email, admin@小罗.com, or if it has to use the long version.
From what I can tell support for unicode domains seems to be making progress, but it doesn’t seem supported enough to use for anything critical. It does look like it should be here pretty soon though so if you are into protecting your presence on the web you might look into registering your 苹果.com and 窗户.com addresses now ^^.
[1]Internationalized domain names