In <3746E75F@lexa.ru> Alex Tutubalin (lexa@lexa.ru) wrote:
alr>> По моим прикидкам, все достаточно законно, RFC не нарушает, пользу имеет.
AT> RFC2068 - нарушает.
AT> p.s. Витя (Хименко), помоги мне от них отбиться. У меня красноречия что-то не
AT> хватает.
Ну что я могу сделать с этими выкормышами BG ? Казалось бы уже все достаточное
число раз видели к чему приводит принцип "побоку все стандарты, лишь бы
работало", которые в конечном итоге 10- (если не 100- :-) кратно удорожают
разработку и приводит к черезвычайно ненадежным системам всего через несколько
лет (и не нужно тут говорить, что через 5 лет все это уже будет 100 раз
переписано -- не будет). Тем не менее это никого не убеждает и люди хотят еще
раз заставить наступить на эти грабли всех пользователей Russian Apache.
Russian Apache устроен следующим образом: 100% совместимость со стандартами и
В ЭТИХ ПРЕДЕЛАХ максимальное удобство для пользователей. Если вам нужно что-то]
другое, то вы можете взять какой-нибудь другой продукт или даже основать свой
собственный, но НИКАКОЕ изменение, которое приведет к возможному нарушению
стандарта (независимо от игр с конфигурацией!) не может быть пропущено.
Если HTTP/1.1 сервер может выдать разные документы при запросе одного и того же
URL'я при различных запросах, которые отличаются только полем Accept-Charset,
то он ОБЯЗАН выдать Vary. Что Russian Apache и делает. Вопрос закрыт. Либо вы
отключаете обработку Accept-Charset СОВСЕМ (при этом Vary тоже перестанет
выдаваться), либо вы ее оставляете и тогда выдается Vary. Третьего не дано
(то есть вы можете себе лично сотворить сервер, который это допускает, но
Russian Apache подобные patch'и в себя включать не должен; даже опционально).
P.S. Что касается squid'а: если бы то время, что было потрачено на обсуждение
тут "проблемы Vary" было потрачено кем-нибудь на просмотр исходников Squid'а
и добавление обработки Vary, то проблема была бы уже решена :-) Конечно это
задачка не на 5 минут (увы: нужно будет для каждого URL'я хранить несколько
закешированных страниц и, боюсь, что без изменения формата cache будет обойтись
сложно, а этого хотелось бы избежать), но если учесть, сколько времени эта
проблема здесь обсуждается...
"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.