In honor of the ten year anniversary of the Mozilla project, home.mcom.com, the Internet Web Site of the Mosaic Communications Corporation, is now back online.
It took some doing. There is comedy.
First, the fun stuff:
- Until now, home.mcom.com and all URLs under it just redirected to netscape.com, then redirected a dozen more times before taking you to some AOL portal page. The old URLs that were baked into the toolbar buttons of the original web browsers didn't work any more. But now, if you fire up a copy of Mosaic Netscape 0.9, and click on the various toolbar buttons, they will work again! For example, in the old browsers, when you clicked on the "What's New" toolbar button, it went here.
home.mcom.com is now a snapshot of that web site from 21-Oct-1994.
mosaic.mcom.com is now a snapshot of that web site from July 1994. That's from just after the company was announced, but before the first browser beta was released. I think that by Oct 1994, both mosaic.mcom.com and www.mcom.com were redirects to home.mcom.com, but I can't remember any more.
In order to make these web sites work in the old browsers, it was necessary to host them specially. In this modern world, a single server will typically host multiple web sites from a single IP address. This works because modern web browsers send a "Host" header saying which site they're actually looking for. Old web browsers didn't do that: if you wanted to host a dozen sites on a single server, that server had to have a dozen IP addresses, one for each site. So these sites have dedicated addresses!
The web server also had to be configured to not send a "charset" parameter on the "Content-Type" header, because the old browsers didn't know what to make of that.
Trivia Question #1: Do you remember why home1.mcom.com through home32.mcom.com exist?
Trivia Question #2: Do you remember the behavioral difference the browsers exhibited when they were talking to a Netscape web server?
Trivia Question #3: When was the
<HYPE> tag implemented, and what was its origin?
I had originally planned on re-hosting these web sites on an SGI Indy running Mosaic Netsite Commerce Server, just for maximal comedic value... and to see how long it took before someone Øwned it, since there must be someone out there who still remembers how to launch an assault on Irix 5.3. Unfortunately, that wasn't possible for political reasons explained below.
- home1.mcom.com through home32.mcom.com exist because the early browsers did client-side load-balancing: the browser itself had a special case where if it was loading "home.mcom.com" it would actually pick a random number from 1 to 32 and instead load "homeN.mcom.com"! Those were physically different servers in the Netscape data center.
When loading pages from a Netscape server, the caption next to the URL field in the browser would change from "Location" to "Netsite".
Enough about all that, I want to run some old browsers!
- My personal collection of old Netscape browsers is here: home.mcom.com/archives/. It's not complete, but it's all that I could find. (It is missing some key releases, such as Netscape 0.4 for Irix, which was the first release to ever leave the building; and the "non-exportable"-crypto versions of almost all of them.)
If you can publicly mirror these, please do! I know of a few mirrors so far: edlang.org, nothings.org, fauxpaw.com, and moar.jp. Torrents, anyone?
Linux users: You can run Mosaic Netscape binaries as old as 0.93 on modern Linux systems! You need to load the "a.out" module in the kernel, and install some really old libraries:
- /etc/modules.conf: alias binfmt-0064 binfmt_aout
- ld.so-1.9.5-13.i386.rpm (a.out loader)
- aout-libs-1.4-9.i386.rpm (a.out libc 4)
- libc-5.3.12-31.i386.rpm (elf libc 5, for NS3)
- Reconstruct /usr/X386/lib/X11/nls/ (ancient X11 idiocy, don't ask)
- For Java in Netscape 2 and newer:
mv moz2_01.zip moz2_02.zip java_30 java_301 /usr/local/lib/netscape/
Since pulling all those files out is kind of a pain, I've put together a tarball: netscape-linux-libs.tar.gz. Unpack it in your root directory. It shouldn't conflict with anything modern. I've tested that on Red Hat 9 and Ubuntu 7.10.
Update, 2023: It has been brought to my attention that, in the intervening decades, that tarball no longer works. If you unpack it on Ubuntu 20.04 it will scorch your /lib directory and render your system unbeatable. If you figure out how to make it go, let me know.
Mac users: If you're using a modern Mac, you need to use an emulator.
- Download BasiliskII and BasiliskIIGUI from Emaculation. Note: there are apparently a number of projects that call themselves "BasiliskII 1.0", but the one linked here seems to be the only one that actually works.
Download Quad650.zip and MacStartup.img from Redundant Robot (a Mac ROM and disk image of MacOS 7.5.5).
Launch "BasiliskIIGUI". Under "Volumes", add "MacStartup.img", and point "Unix Root" at your desktop or something (so that you can transfer the old Netscape installers into the emulator).
Under "Network", set Ethernet to "slirp".
Under "Memory", set model to "Quadra", CPU to 68040, and ROM file to the (unzipped) Quadra ROM. Turn on JIT. Set your screen size to something sane.
Start the emulator, launch "StuffIt Expander" and unpack the "netscape1_0.sea.hqx" file. (You can't just double-click it.)
Launch the "netscape1_0.sea" self-extracting archive. And you're in business!
Alternately! Instead of un-StuffIt-ing each browser, you can just download this System 7 disk image that I made: netscape-mac.img.zip (59MB) which contains each of the unpacked Mac executables from 0.9 through 4.04.
Note that if you want to run 0.9, you'll have to set your (real) system clock back to 1994 to get around the time-bomb. (0.93 and later don't have a time bomb.)
Once you've got those old browsers running, you'll find that they're working fine with the mcom.com web sites, but they fail on just about every other web site in the world (for the "Host" header reason I described above).
I have a fix for that!
I wrote a small proxy server that bidirectionally translates the HTTP/1.0 protocol spoken by old web browsers to the HTTP/1.1 protocol spoken on the modern web. Download and run http10proxy.pl. (You may need to install the Net::Server::Fork Perl module first.) Then, go into the preferences on your ancient browser and set "HTTP Proxy" to localhost, port 8228. This will adjust outgoing Host headers as well as incoming Content-Type headers.
What Was That About Politics?
- When I heard that AOL was shutting down their Netscape division for good, I mailed a contact there and asked if they'd transfer the mcom.com domain to me, so that I could resurrect these web sites to make the old browsers work right.
My contact asked around, and much to my surprise, the answer was yes! Wheels were put in motion, AOL's operations folks removed their dependencies on those domains (no idea what those were!) and the domains were about to be transfered... when...
AOL Chief IP Counsel and Time Warner blocked it.
Because their lawyers determined that, because mcom.com is ten years old and four letters long, they could make several hundred thousand dollars by simply putting it on the market and selling it to a spammer!
And so they began the process of doing exactly that.
Fortunately, my contact (who prefers to remain anonymous) talked them out of this, pointing out that it would be perhaps not the best PR move. But still, they wouldn't transfer it to me. AOL still owns the domains. However, they were willing to host the old Netscape content there, at least for now.
So, thank you to my anonymous contact for all the help! And thank you to AOL for hosting these historic web pages. And for not (yet?) selling the domain to a spammer.
Update, 2023: In the intervening years, the ownership of the "mcom.com" domain changed hands again, and is currently in the possession of Yahoo. I should point out that Yahoo's admins have also gone the extra mile to help keep these nostalgic sites online, so thank you very much to them as well!