这些模块默认会全部编译进Nginx,除非手工指定某个模块在configure时排除。
这个模块将在应答头中为”Content-Type”字段添加字符编码。
此外,这个模块可以将数据重新编码,只能在单向对其进行重新编码,即来自服务器到达客户端。
配置实例:
charset windows-1251;source_charset koi8-r;
指令
charset
语法:charset encoding|off
默认值:charset off
使用字段:http, server, location, location中的if字段
这个指令使应答头中的”Content-Type”字段使用指定的编码集,如果这个字符集与source_charset指令设置的字符集不相同,将重新编码字符集,参数off表明不在应答头中添加”Content-Type”信息。
charset_map
语法:charset_map encoding1 encoding2 {…}
默认值:no
使用字段:http, server, location
charset_map指定了一个编码转换表,同时会创建一个反向转换表,代码均使用十六进制,如果在80-FF范围内没有被记录的代码,它们将被标记为”?”。
如下例:
charset_map koi8-r windows-1251 { C0 FE ; # small yu C1 E0 ; # small a C2 E1 ; # small b C3 F6 ; # small ts # ...}
将koi8-r转换为Windows-1251的完整转换表为conf/koi-win。
override_charset
语法:override_charset on|off
默认值:override_charset off
使用字段:http, server, location, if中的location字段
参数指定在代理服务器或者FastCGI服务器上取得的应答头中存在”Content-Type”字段,将为应答启用编码转换,如果允许编码转换,将使用应答头中指定的编码对其初始化。
注意如果是在一个子查询中取得的应答,会始终将应答中的编码转换为基础编码,并不依赖于override_charset指令。
source_charset
语法:source_charset encoding
默认值:no
使用字段:http, server, location, if中的location字段
参数指定了应答中的初始代码,如果这个参数与charset指令中的不同,将启用编码转换。