我刚刚看到AngelList的这个URL - http://✌.com/。它中有一个奇怪的符号,它重定向到https://angel.co/。谁知道这是如何工作的?我认为你不能在URL中使用这样的符号。
答案 0 :(得分:2)
非ASCII符号(UTF-8)转换为Punycode(见下文),因此http://✌.com/被转换(编码)为http://xn--7bi.com/。此域设置重定向的所有者(响应状态为301已永久移动),因此您将转到https://angel.co/。
Punycode是一种编码语法,通过它的Unicode(UTF-8)字符串 字符可以翻译成允许的基本ASCII字符 在网络主机名中。 Punycode用于国际化域 名称,简称IDN或IDNA(国际化域名) 应用程序)。
例如,当您在浏览器中键入café.com时,您的 浏览器(这是启用IDNA的应用程序)首先转换 字符串to punycode“xn--caf-dma.com”,因为字符'é'不是 允许在常规域名中使用。 Punycode域名不适用于旧版本 浏览器。
(source of quotation and Punycode encoder/decoder)
此转换在RFC 3490。
中有所描述答案 1 :(得分:0)
这种情况并不常见,但并非不可能。浏览器或客户端URL-在发送之前对URL进行编码(也称为百分比编码),以便正确传输特殊字符。
您可以在此处详细了解网址:http://tools.ietf.org/html/rfc3986