What Is The Difference Between A URI And A URL?

Milecia McG on October 11, 2018

Working as a web developer means it's good to know as much about how the internet works as possible. It also means you'll hear a lot of acronyms th... [Read Full]
markdown guide
 

Always wondered. Would have been nice to have seen some examples too :)

 
 

dev.to is not a URI, it is just a domain name.

URI's must start with a scheme (e.g. file, http, ftp) as specified in section 1.1.1 of the RFC you linked to.

A scheme may or may not be associated with a protocol which is where your confustion may be coming from. For instance the schemes 'http' and 'ftp' are clearly associated with the HTTP and FTP protocols, whereas the 'file' scheme is not associated with any protocol.

Hm yes, correct. I think I confused myself :D
Sorry.

 

Love the graphic! Reminds me of the relationship between squares and rectangles.

 

You could also say that the URL is that part of the URI that never changes, right?
Example:
example.com/Project/users/1
example.com/Project/posts
In this case, the URL is “www.example.com/Project”.
Correct me if I’m wrong!
By the way, nice article!

 

They are both URIs but not URLs, because you do not know where to find them. To be a locator I think you need to specify where I can find it, in this case it should have a protocol.

 

Hmm, that makes sense. So my affirmation would be valid if I added the protocol to both of them?

 

you have to reverse URL and URI in your graph example.
If I'm reading you correctly, URI (Name) is a subset of URL (Name + location), so the shapes should be the other way round : URL should wrap URI and not the opposite.

Why am I the first one to notice ?

 
 

What is an example of an URI that is not an URL?

 

Here's a URI that's not a URL:
example.test.com

The reason that this is not a URL is because this system could respond to different protocols.

This URI could have a URL like any of these:
ftp://example.test.com
example.test.com
example.test.com

Hopefully that makes sense!

 

I don't think example.test.com is a valid URI. In RFC3986:

URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ]

And it didn't say anything about that schema can be ignored. Also ":" seems to be necessary in the definition. Am I thinking wrong?

 

This was helpful explanation. Exactly what I needed. Thank you!.

 

For exaples and a more detailed analysis pertaining the origins and sometimes religious distinction betweeen URI, URL and URN can be found here: danielmiessler.com/study/url-uri

Inclouding exerpts of the RFCs that outlined these terms.

 

Ran into this exact question a month ago. Your explanation is way easier than what I could find then.

 
 
 

This is AWESOME! Short and sweet and right to the point plus I learned something! I'd love to see more posts like this.

 

thanks
imho about the use of terms:
w3c allows to use both variants without a difference
w3.org/TR/uri-clarification/#recom...

 

The clearest, most concise explanation of the topic that I've seen thus far. Many thanks! 👏

 
 

Thanks, However I can't tell if my eyes are bent or the circles are 👀

 

The tenth time I've looked up this distinction. Thanks!

code of conduct - report abuse