Create an Account
username: password:
 
  MemeStreams Logo

MemeStreams Discussion

search


This page contains all of the posts and discussion on MemeStreams referencing the following web page: Things I learn today: Hyperlink madness. You can find discussions on MemeStreams as you surf the web, even if you aren't a MemeStreams member, using the Threads Bookmarklet.

Things I learn today: Hyperlink madness
by Acidus at 4:00 pm EST, Jan 9, 2007

There are many way to specify a URL in a hyperlink. For all these examples, assume the user is currently looking at the page http://www.memestreams.net/topics/

For example, this is an absolute URL:
http://www.memestreams.net/topics/

Absolute URLs tell the browser what protocol to use (HOW), what hostname to contact (WHERE), and what resource to grab (WHAT).

You can specify an relative URL:

/topics/

In this can, the URL is relative to where the user currently is. The browser already knows it is using the HTTP protocol (HOW), it already knows the hostname (WHERE). The link simply tells the browser the resource to grab (WHAT).

Most people, including me, think that there is no way to create a hyperlink pointing to a different WHERE than you are currently on without specifying the HOW. For example, the following hyperlink does not take you to msblabs.org

msblabs.org/headers.php

Instead the browser links see this as the equivalent of following, which does not exist.

http://www.memestreams.net/topic/msblabs.org/headers.php,

The browser doesn't know that the msblabs.org specifies the WHERE, and is not part of the WHAT.

However, there is a way to define a hyperlink that points to a different WHERE without specifying the HOW.

//msblabs.org/headers.php

This URL construction is perfectly valid, and the // lets the browser know that it should fetch this resource using the current HOW, but that the text after the // but before the / specifies a new WHERE. Yes this is messed up. Yes its in the RFC spec. Yes there are sites in the wild like SlashDot that use this form.

And yes, I still want to punch Tim Berners-Lee in the face.


 
 
Powered By Industrial Memetics