There is a method to instruct the server to send you the document in the requested character set via the HTTP_ACCEPT_CHARSET
variable.

If your browser makes a file downloading attempt instead of displaying the page, it can't handleContent-Type: type; charset=name
in HTTP header, send a bug report to the development team.
If your browser is able to request character set (Russian KOI8-R character set is assumed in the example below), you'll have KOI8-R
in HTTP_ACCEPT_CHARSET
field. For example:
HTTP_ACCEPT_CHARSET = KOI8-R, ISO-8859-1; q=0.1