我想知道以下网址是否有效。
路径中的点,在主持人之后:
http://www.example.com/v.b.w..com
主机中的点,作为子域的一部分:
http://v.b.w..co.manufacturer.example.com/
答案 0 :(得分:2)
1。路径中 ..
有效(example.com/v.b.w..com
):
RFC 3986允许它,甚至可以在abnormal examples中列出它:
Within a representation with a well defined base URI of
http://a/b/c/d;p?q
a relative reference is transformed to its target URI as follows.
⋮
"g.." = "http://a/b/c/g.."
"..g" = "http://a/b/c/..g"
请注意,/../
无效,因为该网址会被解释为具有相对部分 - 指向a/b/../c
的链接就像是指向a/c
的链接。
2。子域中的 ..
无效(http://no..bad.example.com
):
从RFC 1738 - Uniform Resource Locators (URL),第5部分 BNF获取特定网址:
host = hostname | hostnumber
hostname = *[ domainlabel "." ] toplabel
domainlabel = alphadigit | alphadigit *[ alphadigit | "-" ] alphadigit
令牌之间只允许一个句号。
答案 1 :(得分:1)
nslookup会告诉您它是否是合法名称。
我在Ubuntu 16.04.1 LTS上运行了以下内容
$ nslookup http://v.b.w..co.manufacturer.domain.com/
nslookup: 'http://v.b.w..co.manufacturer.domain.com/' is not a legal name (empty label)