diff options
author | Simon McVittie <smcv@ http://smcv.pseudorandom.co.uk/> | 2009-01-31 18:26:37 +0000 |
---|---|---|
committer | Simon McVittie <smcv@ http://smcv.pseudorandom.co.uk/> | 2009-01-31 18:26:37 +0000 |
commit | dedbe110f27e77051c8e49e0a53b8cdd148dd752 (patch) | |
tree | 8b8149395dbb5edccea544e79400871a15a37731 | |
parent | 170b86a2efb1908355f5812eaa3f3de4a2dcaa49 (diff) |
CGI: pad error responses with 512 bytes of spaces so IE will display them
IE displays its own error responses unless the server's was >= 512 bytes.
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q294807
-rw-r--r-- | IkiWiki/CGI.pm | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/IkiWiki/CGI.pm b/IkiWiki/CGI.pm index 7e968d966..8734cdd49 100644 --- a/IkiWiki/CGI.pm +++ b/IkiWiki/CGI.pm @@ -239,6 +239,9 @@ sub check_banned ($$) { print $q->header(-status => "403 Forbidden"); $session->delete(); print gettext("You are banned."); + # Internet Explorer won't show custom 404 responses + # unless they're >= 512 bytes + print " " x 512; cgi_savesession($session); exit; } @@ -323,7 +326,10 @@ sub cgi_goto ($;$) { "<p>". sprintf(gettext("The page %s does not exist."), htmllink("", "", $page)). - "</p>"); + "</p>". + # Internet Explorer won't show custom 404 responses + # unless they're >= 512 bytes + (" " x 512)); } else { redirect($q, urlto($link, undef, 1)); |