Performance and RFC 2396
Post from February 18, 2009 (↻ October 19, 2022), filed under Web Development (feed).
This and many other posts are also available as a pretty, well-behaved ebook: On Web Development.
RFC 2396 specifies that relative URIs like
//foo get resolved as
http://foo. This means, if you link a resource like
@href may as well just point to
Figure: An image that wouldn’t be there if
@src couldn’t start with
This has two advantages: You can avoid security alerts when juggling with and switching between http and https, and you can save a couple of characters per URI reference. But I’m saying that just to inspire performance critics who already and with great joy discussed general advantages of HTML, including omitting optional tags.
Since this part of RFC 2396, seen as a whole, is still relatively new to me feel free to add to this. I’m just curious and love experimenting. So after I verified that all major browsers support the
// syntax I actually created a “honeypot” test page to see whether that page gets indexed properly by search engines. Watch this space for the findings.
Update (February 28, 2009)
As it seems, all major search engines followed the “hidden” links to the RFC 2396/3986 test page I set up: Google was first, Yahoo, Microsoft’s Live Search, and Altavista followed over the last days. There’s a slim chance that the test might have been compromised, but there are no indicators whatsoever solidifying that concern.
Update (June 28, 2013)
We’ve found this approach so useful, it’s common practice now.
I’m Jens, and I’m an engineering lead and author. I’ve worked as a technical lead for Google, I’m close to W3C and WHATWG, and I write and review books for O’Reilly. I love trying things, sometimes including philosophy, art, and adventure. Here on meiert.com I share some of my views and experiences.
If you have a question or suggestion about what I write, please leave a comment (if available) or a message. Thank you!
On February 18, 2009, 11:09 CET, Kroc Camen said:
Most excellent, I really look forward to your findings. This syntax will be especially pertinent to the regex I use for publishing.
On February 18, 2009, 21:49 CET, potherca said:
I come from a back-end development background myself and for the last year or so I’ve been delving deeper and deeper into the front-end. This is one of those fun little quirks I really enjoy to encounter… Just thinking out loud here, but I wonder how this compliments/collides with (for example) user-input validation?
Looking explicitly for a
http://isn’t necessary… things could be greatly simplified. Links only need to be
What fun 😉
Like the right honorable K. Camen, I to am looking forward to your findings… Keep us informed!
On February 18, 2009, 23:36 CET, Keith Bell said:
Jens, I wasn’t aware of that before. It’s interesting in a “maybe I’ll find a use for that one day” kind of way.
I wonder if the syntax is supported well by mobile user agents.
On February 19, 2009, 9:12 CET, Francesco said:
That’s pretty interesting! I’m looking always for ways to trim my code as much as possible. Looking foward to your results!
On February 23, 2009, 9:57 CET, Gunnar Bittersmann said:
Why do you refer to RFC 2396 which has been obsoleted by RFC 3986 for 4 years?
On February 23, 2009, 16:51 CET, Gunnar Bittersmann said:
Hm, funny. The HTML version of RFC 2396 lists “Obsoleted by: 3986” and “Updated by: 2732”; the plain text version does not.
On April 15, 2009, 20:29 CEST, Steven Black said:
Works in IE and Firefox. But Chrome resolves “//” as “file://”.
Maybe this is interesting to you, too:
- Next: Another Survey (Including Website Usability Scale Template)
- Previous: Arial, Helvetica
- More under Web Development, or from 2009
- Most popular posts
Looking for a way to comment? Comments have been disabled, unfortunately.
Get a good look at web development? Try The Web Development Glossary (2020). With explanations and definitions for literally thousands of terms from Web Development and related fields, building on Wikipedia as well as the MDN Web Docs. Available at Apple Books, Kobo, Google Play Books, and Leanpub.