types {}
Igor Sysoev
is at rambler-co.ru
Wed Apr 13 16:34:05 MSD 2005
On Wed, 13 Apr 2005, Alexey Mahotkin wrote:
>>> Подскажите пожалуйста, как можно для определенного location добавить
>>> описание mime type?
>>>
>>> location {
>>> types {
>>> x/x ext;
>>> }
>>> }
>>>
>>> Такая конструкция похоже полностью заменяет типы, определенные выше. А
>>> мне нужно добавить к ним.
>>
>> Да, сейчас заменяет. А имеет ли смысл добавлять mime types на уровне
>> server и location ?
>
> Выставление чарсета? Например, я хочу, чтобы .html-файлы были в
> windows-1251, а .xml -- в utf-8.
types определяет только mime-type без charset и прочая. Хотя
конструкция вида
types {
'text/xml; charset=utf-8' xml;
...
}
должна работать, но не проверял. Кодировку, на мой взгляд, лучше ставить так:
location ~* \.xml$ {
charset on;
default_charset utf-8;
...
}
location ~* \.html$ {
charset on;
default_charset windows-1251;
...
}
> А есть где-нибудь дока на модуль ngx_http_charset_filter.c? Он
> работает как русский апач?
Нет, ngx_http_charset_filter_module перекодирует только от сервера
к клиенту. Кодировка клиента задаётся жёстко. Развитие в сторону
mod_charset не планируется (пора всем переходить на жёсткие кодировки).
Директивы:
charset on|off;
source_charset <name>; # кодировка документа
default_charset <name>; # кодировка клиента
Если указана только одна директива source_charset или default_charset,
то перекодировка не делается, а только ставится Content-Type.
charset_map <charset1> <charset2> { ... }
задаёт таблицу однобайтной перекодировки, пример в conf/win-koi.
Игорь Сысоев
http://sysoev.ru
More information about the nginx-ru
mailing list