diff -ur LiveJournal-20010406/cgi-bin/404notfound.cgi LiveJournal/cgi-bin/404notfound.cgi --- LiveJournal-20010406/cgi-bin/404notfound.cgi Sat Apr 7 02:30:36 2001 +++ LiveJournal/cgi-bin/404notfound.cgi Sun Apr 22 22:14:23 2001 @@ -101,9 +101,10 @@ } ##### - ##### check for username.livejournal.com/ [mode] + ##### check for username.$USER_DOMAIN/ [mode] ##### - elsif ($ENV{'HTTP_HOST'} =~ /^\s*([\w\-]{1,15})\.livejournal.com(\:80)?\s*$/i && + elsif ($USER_VHOSTS && + $ENV{'HTTP_HOST'} =~ /^\s*([\w\-]{1,15})\.$USER_DOMAIN(\:80)?\s*$/i && ($1 ne "www")) { $user = lc($1); @@ -112,7 +113,7 @@ my $c_user = $user; $c_user =~ s/_/-/g; print "Content-type: text/html\n\n"; - print "

Bad URL

You cannot have underscores in the hostname. If the LiveJournal username of the journal you're trying to view is \"$user\", you must replace the underscores with hypens. So, you'd really want to go to \"http://$c_user.livejournal.com/\"."; + print "

Bad URL

You cannot have underscores in the hostname. If the LiveJournal username of the journal you're trying to view is \"$user\", you must replace the underscores with hypens. So, you'd really want to go to \"http://$c_user.$USER_DOMAIN/\"."; print "

You're probably thinking, if you can show this error message, why can't you just show the journal? The answer is because it's not correct. The DNS spec doesn't allow for underscores, so just because the DNS server let you get this far, and because I modified Apache to allow underscores, it wouldn't be correct to show the journal. Fix your link."; next REQUEST; @@ -146,8 +147,8 @@ elsif ($ENV{'REQUEST_URI'} =~ m!^/confirm/(\w+)\.(\w+)$!) { print "Status: 301 Moved Permanently\n"; - print "Location: http://www.livejournal.com/register.bml?$1.$2\n\n"; - print "Go here.\n\n"; + print "Location: $SITEROOT/register.bml?$1.$2\n\n"; + print "Go here.\n\n"; next REQUEST; } @@ -171,7 +172,7 @@ if ($user ne lc($user)) { print "Status: 301 Moved Permanently\n"; - print "Location: http://www.livejournal.com/users/", lc($user), "\n"; + print "Location: $SITEROOT/users/", lc($user), "\n"; print "Content-type: text/html\n\n"; print "The journal you are looking for is actually {DS}(Help) +HELP=>{DS}(Help) H1=>{DS}

%%DATA%% H1/FOLLOW_CHOICES=>{DS}%%DATA%% @@ -100,7 +100,7 @@ {Fp} (=LOAD_PAGE_INFO=) - + %%TITLE%%