Cant Launch Firefox from Mac with UTF8 International Domain name
From a Mac running OSX 10.7, I Launch Firefox with a UTF-8 string containing an international domain name:
I try to launch http://www.vihtilä.fi and Firefox responds: Can’t connect to http://www.vihtil\xc3\xa4.fi but the address bar string is correct. If I copy the address bar string, and paste it back into the address bar, then hit enter, the site opens. Safari and Chrome launch the correct site.
\xc3\xc4 is the UTF8 representation of 'ä'
Firefox on Windows works correctly, but I pass it a WCHAR (UTF16) name.
所有回覆 (4)
On this forum it is because it is already encoded that way via encodeURi() if you inspect the page source (Ctrl/Cmd + U):
- http://www.vihtil%c3%a4.fi/
- UTF-8: http://www.vihtilä.fi
- puny code: http://www.xn--vihtil-gua.fi/
由 cor-el 於
I was not clear. This is not a launch from a web page. It is a launch from within a program:
CFURLCreateWithBytes(... kCFStringEncodingUTF8 ...)
...
LSOpenFromURLSpec( ... )
The bytes are the UTF8 string "http://www.vihtilä.fi"
由 cor-el 於
That is weird.
The forum makes a correct and working link (www.vihtilä.fi) via preview, but changes the URL to the escaped encodeURI version when it is posted.
I can't replicate what you are doing, but the page opens via a desktop shortcut with "-url http://www.vihtilä.fi" command line parameter.
I thought the problem might be RFC 2396, since CFURL.h says that URLs must have high-bit characters (UTF-8) percent-encoded. So I tried that, and now I send http://www.vihtil%c3%a4.fi/ via LSOpenFromURLSpec. That doesn't work, either, with the message: Firefox can't find the server at www.vihtil%C3%A4.fi."