域中无效字符的浏览器/ DNS进程?

时间:2010-07-30 15:17:39

标签: http dns uri special-characters

我想知道浏览器和/或DNS如何处理用户在域名中输入无效字符。

假设我拥有一家着名的高级餐厅连锁店 meat&amp; potato 。我们所有的市场营销都将我们称为肉类和土豆(肉类+&符号+土豆,没有空格),而且很可能人们正常打字 www.meat&amp; potato.com < / strong>进入他们的浏览器。

浏览器和/或其ISP的DNS如何处理此请求?有什么方法可以让用户访问正确的域而不需要他们进行额外的点击/击键吗?

修改:在我的有限测试中,我发现Chrome会将角色转换为网址编码版本(例如%26为&amp;),然后在某处发送请求导致我的ISP(RCN)给了我一个搜索结果页面(因为RCN是那样的邪恶):www17.searchresults.rcn.com/ ...所以,有些东西正在到达ISP。

1 个答案:

答案 0 :(得分:0)

主机名有限(RFC1034第3.5节)到字母(a-z),数字(0-9)和连字符( - )。 此外,最近的浏览器允许使用惩罚编码(RFC3492)来使用国际字符 - 这基本上适用于127以上的字符值。

我不知道浏览器如何处理这个问题,但我希望他们遵循这两套规则,并为最终用户提供其他任何错误/重定向。

因此它永远不会像DNS / ISP那样。

不幸的是,这意味着目前无法制作“&amp;”在域名工作......