Last modified: 2014-09-21 17:49:08 UTC

Wikimedia Bugzilla is closed!

Wikimedia migrated from Bugzilla to Phabricator. Bug reports are handled in Wikimedia Phabricator.
This static website is read-only and for historical purposes. It is not possible to log in and except for displaying bug reports and their history, links might be broken. See T19316, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 17316 - Redesign the Wikimedia 404 error page
Redesign the Wikimedia 404 error page
Status: NEW
Product: Wikimedia
Classification: Unclassified
Site requests (Other open bugs)
unspecified
All All
: Low enhancement with 3 votes (vote)
: ---
Assigned To: Nobody - You can work on this!
http://en.wikipedia.org/asdfjklj
:
Depends on: 12302 28648 35052
Blocks: 19566
  Show dependency treegraph
 
Reported: 2009-02-02 15:42 UTC by Mark Ryan
Modified: 2014-09-21 17:49 UTC (History)
18 users (show)

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Attachments
New error message file (2.40 KB, text/html)
2009-02-02 15:42 UTC, Mark Ryan
Details
Based on previous attachment but with explicit link to Wikipedia (2.58 KB, text/html)
2009-02-20 18:55 UTC, Ben White
Details
Improved version of error page (2.71 KB, text/html)
2010-08-16 20:18 UTC, Trevor Parscal
Details

Description Mark Ryan 2009-02-02 15:42:19 UTC
Created attachment 5769 [details]
New error message file

The current 404 error page served by Wikimedia is ugly and has a few problems:

* It has a meta refresh on the client-side, which is pretty much universally discouraged for accessibility purposes;
* The 'foundation' in the footer is not capitalised;
* It doesn't give the right 404 header, instead serving a "200 OK" code, which is apparently problematic.

It is also subject to a pretty scathing critique at the following URL:

http://www.xmlplease.com/error404#h2-17

I've whipped up a new page which I think looks better and does the job better (see attachment). It uses 3 images on Commons.

If you choose to implement this replacement, you would need to make sure to spit out the 404 URL in the page title and in the italics paragraph, and a modified version of this in the "check" link to whack a "/wiki/" before it (presumably the same code that is presently used in the meta http-refresh code). You would also need to fully protect File:Errorline.png and File:Errorbg.png on Commons.

This new page doesn't fix the multilingual problem (serving 404s in English on all sites), but I figure this is the sort of situation where such coding would be done on the server side, so it would require someone with programming abilities far above my own to implement (I don't think anyone else wants another gigantic monster of an error message page). If this was done on the server side, you'd be able to use the HTTP headers to ascertain the correct language to serve, in a way that is not possible in Javascript.
Comment 1 Mark Ryan 2009-02-02 15:43:27 UTC
Oh, and someone should also fix that "200 OK" code, so that it serves a 404 instead, as I mentioned above.
Comment 2 X! 2009-02-16 01:09:10 UTC
That's done in the .htaccess file, using

ErrorDocument 404 http://en.wikipedia.org/404error.php

rather than 

ErrorDocument 404 /404error.php
Comment 3 Brion Vibber 2009-02-18 20:10:24 UTC
Oooooooh I really like this look. :D

Will want to integrate the multilingual messaging...
Comment 4 Mark Ryan 2009-02-20 03:27:09 UTC
It'd probably also be fairly trivial to change the logo to that of whichever domain it's spawned on.
Comment 5 Ben White 2009-02-20 04:02:54 UTC
Overall I like the appearance of this very much, but I'm not fond of the phrase "You may wish to check for a page on the wiki with that title", with the verb "check" serving as the link. Instead, I think the link should be on a noun. Even better would be for it to specifically state "You may wish to check for [[Titanic]] on the wiki."

Better still might be to continue using some form of the quesiton "Did you mean to type http://en.wikipedia.org/wiki/titanic?", which to me makes it immediately apparent that I've accidentally left out the "wiki", and I can more easily remember how to avoid the problem in the future.
Comment 6 Ben White 2009-02-20 18:55:43 UTC
Created attachment 5837 [details]
Based on previous attachment but with explicit link to Wikipedia

This attachment implements the suggestions I made above and moves the link to the Wikimedia Foundation back to the bottom.
Comment 7 Brion Vibber 2009-02-28 02:25:50 UTC
Just noting that this looks pretty awesome. :)

Might want to see if we can integrate this sort of look into the cache error page as well.
Comment 8 Platonides 2009-04-07 20:53:02 UTC
The links on the proposal have some problems:
[[Main Page]] -> http://en.wikipedia.org/ It's a 301 redirect, so better to send them directly to http://en.wikipedia.org/wiki/Main_Page
[[Wikimedia Foundation]] -> http://www.wikimedia.org/ Should link to http://wikimediafoundation.org/wiki/Home

Comment 9 Trevor Parscal 2009-08-06 21:45:45 UTC
I shall iterate this design a bit - but seriously it looks pretty solid.
Comment 10 Brion Vibber 2009-08-06 21:49:49 UTC
Yay! :D

Just a note on the related bugs:

bug 12302 asks to make the 404 page localizable per site.

bug 19566 reqs tweaking the "A project of the Wikimedia Foundation" text to be a little more general so it doesn't sound like we're claiming to operate the chapters who we happen to run wikis for.

And we may also want to update our squid error pages etc to have a consistent look. [Note that localization on the squid error page is accomplished by wrapping it all in JS, which may not be the best implementation. I think squid actually supports having localized error pages natively, so we could do that by generating static output into a template. We'll want to take a peek!]
Comment 11 Derk-Jan Hartman 2009-08-07 16:53:04 UTC
The body requires a forced margin of 0 to override the default margin (like in Webkit). Otherwise you get a horizontal scrollbar because one of the div's is 100% wide (pagewidth) making the entire body pagewidth + margin.

body { margin: 0; }

I tested this in Webkit inspector.
Comment 12 Trevor Parscal 2009-08-07 16:56:41 UTC
The latest version I'm working on uses

html, body {
    padding: 0;
    margin: 0;
}
Comment 13 Derk-Jan Hartman 2010-08-16 19:23:46 UTC
This never got finished right ? It is really a shame not to use this I think.

Putting it under siterequests now, seems most appropriate.
Comment 14 JeLuF 2010-08-16 19:43:17 UTC
With Firefox 3.5, I get a horizontal scrollbar, no matter which size the browser window has.
Comment 15 Trevor Parscal 2010-08-16 20:18:33 UTC
Created attachment 7633 [details]
Improved version of error page

This is an improved version of the page.
Comment 16 Casey Brown 2010-08-17 01:44:34 UTC
(In reply to comment #15)
> Created an attachment (id=7633) [details]
> Improved version of error page
> 
> This is an improved version of the page.

Looks good, but a few things:

* per the other comments raised above and on other bugs, we should tweak "A project of the Wikimedia Foundation" to something like "A project hosted by the Wikimedia Foundation" or "A site hosted by the Wikimedia Foundation".

* there are two tiny CSS errors:
** Line 32 / h2 / Value Error : color attempt to find a semi-colon before the property name.
** Line 38 / p / Value Error : margin-bottom attempt to find a semi-colon before the property name.

* we need to figure out the best way to make it multilingual/translatable.
Comment 17 Nemo 2010-08-17 01:51:49 UTC
(In reply to comment #16)
> * we need to figure out the best way to make it multilingual/translatable.

Yes, and please don't link only Wikipedia with that "Main Page" link. What about a relative path to the domain?
I think that «To check for "[TITLE]" on Wikipedia» could make sense, but perhaps http://[LANG].wikipedia.org/wiki/Special:Search/[TITLE] would be a better link (or maybe http://[LANG].wikipedia.org/wiki/Special:Search?search=[TITLE] which works as "go").
Comment 18 Platonides 2010-08-20 20:46:55 UTC
The problem of the phrase "To check for "[TITLE]" on Wikipedia, see:" is to get the right item for "Wikipedia" (ie. the domain sitename).

The other pieces can be easily extracted but that has greater variation (we could probably use the domain unless it is "wikimedia", and then what?).
Comment 19 MZMcBride 2010-08-20 23:22:15 UTC
(In reply to comment #18)
> The problem of the phrase "To check for "[TITLE]" on Wikipedia, see:" is to get
> the right item for "Wikipedia" (ie. the domain sitename).
> 
> The other pieces can be easily extracted but that has greater variation (we
> could probably use the domain unless it is "wikimedia", and then what?).

Sounds like way more headache than it's worth. I'd either rephrase it to something like "To check for [title], see [link]" or "To check for [title] on [subdomain.domain.org], see [link]".
Comment 20 Priyanka Dhanda 2011-04-21 17:18:02 UTC
The latest improved version is live now. Marking this fixed.
Comment 21 MZMcBride 2011-04-21 18:28:32 UTC
(In reply to comment #20)
> The latest improved version is live now. Marking this fixed.

I'm not sure where the meta-refresh came from. One of the goals mentioned in comment #0 is to remove it and none of the proposed attached redesigns include it, but the new live version does. Re-opening this for now.
Comment 22 Nemo 2011-04-21 18:44:42 UTC
It should also be quite easy to fix this: 

(In reply to comment #16)
> * per the other comments raised above and on other bugs, we should tweak "A
> project of the Wikimedia Foundation" to something like "A project hosted by the
> Wikimedia Foundation" or "A site hosted by the Wikimedia Foundation".

While

> * we need to figure out the best way to make it multilingual/translatable

but that's more difficult. Perhaps we could add a link to a very simple Meta page which would be easily translatable and could contain a link to the [[HTTP 404]] article in your language.
Comment 23 Samuel Bronson 2014-02-24 20:32:53 UTC
(In reply to MZMcBride from comment #21)
> I'm not sure where the meta-refresh came from. One of the goals mentioned in
> comment #0 is to remove it and none of the proposed attached redesigns
> include it, but the new live version does. Re-opening this for now.

It seems that someone decided that it was a good idea to move it from <meta http-equiv="refresh" /> to an actual (though non-standard) HTTP header.  Of course, Firefox (at least) handles them identically, so this doesn't really help at all.

Note You need to log in before you can comment on or make changes to this bug.


Navigation
Links