Russian Apache Switch to English
Switch to Russian koi8-r
windows=1251
cp-866
iso8859-5
Russian Apache Как это работает Рекоммендации Где взять Как установить Как настроить Статус и поддержка
Краткий обзор FAQ Список рассылки Благодарности Поиск по серверу Powered by Russian Apache
Russian Apache mailing list archive (apache-rus@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[apache-rus] =?koi8-r?Q?=D4=C1=CB?= =?koi8-r?Q?_=C7=C4=C5?= =?koi8



Hi!

 alr> Предложение первое, не торопиться. А по существу, сделать драфт
 alr> по всей русской части apache, как предположительно это будет работать.
 alr> Если бы это удалось, то появится первый полноценный многоязычный сервер.
OK, я завтра-послезавтра сделаю draft, недельку пообсуждаем, сделаю след. 
драфт, закину его в russian-web@sovam.... и можно не работать а обсуждать.

 >>
 alr> Я думаю что лучше:  CharsetDecl koi8-r windows-1251 iso-8859-5 ru,
 alr> то есть последний таг - язык, так уже работало для CharsetTable.
 alr> Это так же правильно, как и CharsetLanguageBind, но совместимо.
В текущей реализации CharsetDecl вызывает резервирование места для таблиц 
перекодировки и прочего подобного. Переделывать не хочется. Да и ваш способ
неудобен, если один charset может быть у нескольких языков (скажем, тот же
iso-8859-5 - это несколько языков, iso-8859-1 - тем более).

 alr> Я тут хочу повторить свое предложение: использовать одну таблицу
 alr> для каждого Charset - через UNI-code (utf8?), a из него генерировать
 alr> все остальные.
Тут два недостатка:
1) оно не работает, если нет двустороннего преобразования между charset.
Скажем, koi8->translit - возможное преобразование, а наоборот - нет
2) оно не работает, если есть "многобуквенные буквы" (тот же translit)
3) convert_by_table и так ~10% времени кушает, хотя там всего-лишь 
преобразование по 256-байтовой таблице. По 16-битам или по переменной длине
(utf-8) будет гораздо медленнее.

 alr> Я тут в одном месте долго искал ошибку: почему сервер
 alr> в  windows-1251, не перекодирует,как оказалось что сервер настроен на
 alr> koi8-r, а тут была перекодировка из iso-8859-5 в windows-1251 - пока
 alr> нашел - вспотел.
:) Еще один наступил на эти грабли.

 >> б) для случая, когда внутреннее имя и имя выдаваемое пользователю не
 >> совпадают, нужна какая-то директива вида:
 >> CharsetOverrideName internal_name language displayed_name
 alr> А как это?
Ну, скажем, есть у меня iso-8859-1-cz и iso-8859-1-fi. Это - внутренние 
представления и внутренние названия (просто чтобы различать перекодировки 
финского и чешского). Но отдать то пользователю надо 
Content-Type:...;charset=iso-8859-1

И Accept-Charset придет на iso-8859-1

 alr> Я тут посмотрел коды ошибок для HTTP/1.1, там есть код 406 - кто
 alr> знает, как реагируют разные клиенты на него?
Apache еще показывает документ в котором говорит "а вот тут есть такие
документы". Netscape мне его показывал нормально. Собственно, response 406
SHOULD сопровождаться таким документом (по rfc).

С уважением,Alex Tutubalin

--- GoldED 2.42.G1114+








Спонсоры сайта:

[ Russian Apache ] [ Как это работает ] [ Рекомендации ] [ Где взять ] [ Как установить ] [ Как настроить ] [ Статус и поддержка ] [ Краткий обзор ] [ FAQ ] [ Список рассылки ] [ Благодарности ] [ Поиск по серверу ] [ Powered by Russian Apache ] [ Apache-talk archive ]

"Russian Apache" includes software developed by the Apache Group for use in the Apache HTTP server project (http://www.apache.org/) See Apache LICENSE.
Copyright (C) 1995-2001 The Apache Group. All rights reserved.
Copyright (C) 1996 Dm. Kryukov; Copyright (C) 1997-2009 Alex Tutubalin. Design (C) 1998 Max Smolev.