HttpCharsetModule

WARNING: this article is obsoleted. Please refer to http://nginx.org/en/docs/ for the latest official documentation.

= Synopsis =

This module adds the text encoding to the "Content-Type indicated" response-header.

Furthermore, module can reencode data of one encoding into another. It is necessary to note that the reencoding is accomplished only in one direction - from the server to the client, and only one-byte encodings can be reencoded.

Example configuration: charset        windows-1251; source_charset koi8-r;

= Directives =

charset


The directive charset adds the line "Content-Type" into response-header with indicated encoding. If this encoding is differed from that indicated in directive source_charset, then reencoding is carried out. The parameter "off" deactivate the insertation of the line "Content-Type" in the response-header.

charset_map


The directive charset_map describes the table of reencoding from one encoding into another. A table for the inverse reencoding is created using the same data. The codes of symbols are assigned in hexadecimal form. If no recorded symbols are in the range 80-FF they will be substituted with '?'.

Example usage: charset_map koi8-r  windows-1251 { C0 FE ; # small yu  C1  E0 ; # small a  C2  E1 ; # small b  C3  F6 ; # small ts  # ... }

The complete table of conversion from koi8-r into Windows-1251 is distributed with nginx and is located in file conf/koi-win.

charset_types


override_charset


This directive determines, to carry out reencoding for the response, obtained from the proxied server or from FastCGI-server, if in the response-header a "Content-Type" header already is. If reencoding is permitted, then as the initial encoding the encoding, indicated in the obtained answer, is used.

It is necessary to note that if the response was obtained in the subquery then, independent of directive override_charset, is always carried out reencoding from encoding of the response into encoding of basic demand.

source_charset


The directive source_charset assigns the initial encoding of response. If this encoding is differed from that indicated in directive charset, then reencoding is carried out.

= References = Original Documentation