Hi!
alr> lynx передает с формой:
alr> Content-Type: application/x-www-form-urlencoded; charset=koi8-r
alr> а мозилла, netscape и прочие:
alr> Content-Type: application/x-www-form-urlencoded
alr> У меня из lynx не работала одна cgi-шка, а причина оказывается вот в
alr> чем..
Но ведь Lynx должен нормально распознаваться, т.е. charset указываемый им в
заголовке и "ожидаемый" совпадают. Или я не понял сути проблемы ?
alr> Не знаю как оно в теории, но не имеет смысла apache-rus, при наличие
alr> charset в заголовках скрипта выполнять соответствующую перекодировку
alr> и либо всегда убирать указание на charset, либо всегда его добавлять?
alr> Убирать наверное лучше.. Цель - освободить программера cgi от мыслей о
alr> том, что charset данных может (потенциально) быть другим, чем ожидаемый..
Убирать пока так не получается. I.e. для form/multipart мне пока не по силам
(не по времени, точнее) сделать правильный разбор всех частей. Поэтому в PL21
предполагается просто отключаемая перекодировка form/multipart, но с указанием
charset в переменной ${CHARSET}.
Что касается того, кому доверять - выбранной (по URL/User Agent) кодировке,
или той, которую ставит сам клиент, то тут я немного колеблюсь. Мне неясен
такой момент. Допустим, клиент с Lynx (а вообще - с каким-то теоретическим
броузерои) пришел на http://win-www.some.domain
(предполагаем, что это - Windows-кодировка) и запостил форму с charset=koi8-r.
Допустим, мы ему даже поверили. Вопрос - какова должна быть кодировка ответа
этому клиенту (предполагаем, что Accept-CHarset у него нет)?
С уважением,Alex Tutubalin
p.s. Я тут тяжело болею гриппом и соображалка не соображает. I.e. эти мысли я
еще буду думать.
--- GoldED 2.42.G1114+
"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.