Site Navigation

Tuesday, January 15, 2008

bug 251 - type more if you are not on port 80

Issue: #251
Affects: IE6, IE7
Status: [By Design]

The default port for most Web Servers is port 80. However as a developer, you might have multiple Web Servers running, or special Web Interfaces to your Database or Application Server running on other ports.

Where is this going? Well as a developer, you are likely typing in your site/application hostname in the location bar several times a day while developing/testing.

http://localhost is fairly easy to type, as is http://barney (if thats what your host is named). However the good folks making Browsers made "http://" the default, so you can save yourself 8 (eight) keystrokes if you leave it out. localhost or barney should work just fine.

Now lets say you are trying to get to your Application Server Web Console:

JBoss: http://barney:8080/jmx-console
WebSphere: http://barney:9091/admin
IIS: http://barney:8172/
Ruby On Rails: http://barney:3000

or a web server on a portable USB stick or iPod
http://localhost:81/

If you type in the full URI for these consoles/alternative Web Servers, you will get what you expect.

Even if you drop the "http://" part, you will get what you expect (console/web server), since the browser defaults to http://. However if you are using IE 6 or IE 7, you will get an error!

The webpage cannot be displayed

Its a minor issue, but if you are typing URLs every day, little things like this will drive you nuts.

Status Update:
Well it turns out this isn't a bug. Eric Lawrence from the IE Development Team (and Author of Fiddler Web Debugging Proxy) points out that somevalue:someothervalue is a valid URI, and thus IE is doing the correct thing, looking for an application to handle the URI.


Known Workarounds:
Since this really isn't a bug, there is no workaround however if you pre-pend your hostname with // you will get the page you expect.

So:
//barney:8172/ will actually work.



Bug/Site Feedback |
Submit a bug