Live data from Hacker News

Ask HN: Why does a url use ://?

news.ycombinator.com

11–20 of 26 posts

Re: Ask HN: Why does a url use ://?

#11

Technically, not all of them do; " :" is the common prefix, and everything else depends on the URL type. See: http://www.ietf.org/rfc/rfc1738.txt In particular, section 3.1, 'The scheme specific data start with a double slash "//" to indicate that it complies with the common Internet scheme syntax.'. So it is used by URLs that require any of this information: "// : @ : / ".

An example of this is mailto:foo@bar.com this is still totally valid, but email addresses don't use the // notation for nodes.

Re: Ask HN: Why does a url use ://?

#13
post #12

Tim Berners Lee, the creator of the Web and of URLs, wrote some time ago that he regretted the double slash in URLs, saying that one would suffice.

It went a little further than that, I think the scheme would have been:

http:/com/ycombinator/news/item?id=796434

Re: Ask HN: Why does a url use ://?

#16
post #15

Note that a url like //www.example.com will use the context's protocol, which means an img src="//www.example.com" will use http or https depending on which the page was loaded in. Very handy!

[deleted]

This is not Apache specific. If you take a look at the HTTP protocol, you will see why: Every request has the full path in it (e.g. GET /images/xyz.png HTTP/1.0) , but it is actually optional (in HTTP 1.0) to specify the domain name/host that you want to reach (most browsers send the Host header anyway, because serving multiple domains on one IP would be impossible otherwise).

Re: Ask HN: Why does a url use ://?

#17
In a private conversation some years ago, Tim BL told me that he used to use Apollo workstations back in the 1980s and that he really liked Apollo Domain/OS, so he took the // from the Domain distributed filesystem, which used // as a way of addressing possibly remote files, i.e., //hostname/path/to/file . I suspect the \\ in Microsoft UNC pathnames is also derived from the same, probably due to Paul Leach's influence there as he was also from Apollo.

Re: Ask HN: Why does a url use ://?

#18
post #12

Tim Berners Lee, the creator of the Web and of URLs, wrote some time ago that he regretted the double slash in URLs, saying that one would suffice.

It went a little further than that, I think the scheme would have been: http:/com/ycombinator/news/item?id=796434

And that would have been awesome.

Re: Ask HN: Why does a url use ://?

#19
post #18

Earlier quoted context omitted.

It went a little further than that, I think the scheme would have been: http:/com/ycombinator/news/item?id=796434

And that would have been awesome.

Yes, but there would be a couple of problems as well, specifically the DNS would need some major revamping. The DNS was already operational long before the web came along and it already used the '.' notation.

http:/com/test/www/someresource

and

http:/uk/co/test/www/someresource

Would have both been valid resources but it would be harder than now to figure out where the machine boundary is located.

You can't go by 'count' (because of subdomains) and you can't go by www either.

I think if they would have gone that route for practical reasons the // would have been 'reinvented', and it would probably be placed like this:

http:/com/ycombinator/news//some/path/resource.html

I'm not sure what the implications for phishing, certificates and humans interpreting URLs would have been in that situation either, but I know that I find it convenient to be able to fish the 'hostpart' out of a URL without further knowledge on my side.

Re: Ask HN: Why does a url use ://?

#20
post #18

Earlier quoted context omitted.

And that would have been awesome.

Yes, but there would be a couple of problems as well, specifically the DNS would need some major revamping. The DNS was already operational long before the web came along and it already used the '.' notation. http:/com/test/www/someresource and http:/uk/co/test/www/someresource Would have both been valid resources but it would be harder than now to figure out where the machine boundary is located. You can't go by 'co…

Heh, when _I_ first started using the internet, domain names in the UK were "backwards". My first email address was:

rwj@uk.ac.dl.cxa

In fact the first "domain names" I used were things like "lancs.pdsoft" but I think those were X.25 names, and the less said about X.25 the better.

At some point around '91 or '92 JANET reversed all the domain names to bring it into line with IETF standards. This caused some confusion with names beginning "cs." which could either be the Computer Science dept of some UK unversity, or a domain in the old Czechoslovakia.

Post reply on HN