Привет,
[я многое поскипал, т.к. об одном и том же ]
alr> Логично. Но я же и предлагаю - _если_ клиент задал нам accept-charset или
alr> признаки слабые - ставим. Если оба условия не выполнены - нет. Тогда
alr> сработает нормально и в вышеописанной ситуации, и в той о которой говорил
alr> я.
А вот обратная ситуация. Через прокси пришел MS IE. Без Accept-Charset. Мы не
выдавали Vary и контент залип в кэше. Дальше через тот же proxy идет
_правильный_ клиент с Accept-Charset (lynx, netscape) и просит другую кодировку
через Accept-Charset. Ему выдадут неправильную т.е. из кэша.
Варианты работы HTTP/1.1 кэшей:
1) с поддержкой Vary - документ будет перезапрошен если изменился
Accept-Charset
2) с плохой поддержкой Vary - документ будет перезапрошен, если было Vary
Кэш, который шлет запросы по HTTP/1.0 в любом случае будет перезапрашивать
из-за Expires.
AT>> А как вы отличите русский агент от нерусского ? Вот у меня, скажем,
AT>> Netscape/X11. Как узнать - есть у меня русские шрифты или нет ?
alr> Ну, например, так. Если в accept-language присутствует ru, значит хоть
alr> какие-то но есть (тем более, если есть accept-charset). А если
alr> отсутствует... Это, конечно, может и ничего не значить, но ведь
alr> администратора никто не заставляет пользоваться этим - это же
alr> _возможность_. Зато, если она будет, можно для таких клиентов поставить
alr> автоматический редирект на английские тексты.
Очень удобно, блин. Я себе accept-language никогда не настраиваю, но я хоть
знаю об этой возможности. 95% клиентов об этом и не подозревают и имеют броузер
настроенный по-умолчанию. И не будут его перенастраивать т.к. не умеют. А если
захотят английского варианта - нажмут кнопочку english.
AutoRedirect уж больно суровая фича, если включена, то добиться документа не в
своей кодировке очень трудно. А нужное вам поведение, как я понимаю,
эмулируется через mod_rewrite (и переменную HTTP_ACCEPT_LANGUAGE).
С уважением,Alex Tutubalin
--- 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.