К примеру, идем на тот же
> www.design.ru в гости к
> B> Константину Моршневу. Никаких тебе Expires: никаких
> Cache-control: Есть
> B> Vary: user-agent
>
> Все. Этого достаточно. Squid и MS IE раегируют на Vary
> однозначно: когда-нибудь
> мы типа это за'implement'им, а пока отключим кеширование от греха
> подальше...
> Кнопка Back перестает работать и т.д. Им ПОФИГУ -- что именно ты
> выдал в Expires.
> Они его не анализируют. Важен сам факт его наличия.
>
> B> Понятно, что такие запросы кешироваться будут и они выдаются
> в кодировке
> B> которая нужна пользователю в зависисмости от Юзер-Агента на
> одном порту.
>
> Кешироваться они будут в достаточно ограниченных объемах. А если попадется
> старый Squid (или Apache's proxy AFAIK), который про Vary не
> знает, то начнется
> игра "угадайте кто". Навиделся я и таких site'ом :-(( С
> кеширующим web-сервером
> на переднем плане и перекодирующим на втором. Где первый
> кешировал ответы от
> второго и выдавал их в той кодировке "в какой получилось". Не,
> Shift-Reload
> все лечит, конечно, но этого ли мы хотим ?
>
То есть одним словом, все это выразить так - Vary еще не готов к
употреблению.
> B> Вроде как все работает нормально (я смотрел через одну проксю и на
> B> виндоусе - win-1251 и на спарке - koi8-r).
>
> Вот в том-то и дело, что ты посмотрел "через одну проксю". А их в природе
> далеко не одна. И browser'ов -- не два и не три... А если еще
> учесть разные
> версии...
>
> B> Конечно есть мелкий минус что при переключении кодировки уже
> на стороне
> B> клиента - выдается каша (заголовка text/html; charset=... - нету),
>
> То есть ты предлагаешь вот ту самую игру "угадайте кто" ? Спасиба
> тебе. Добрый
> ты. Заботишься, чтобы мне не скучно было. Но я ведь не поиграть в
> игры к тебе
> на site зашел, а, наверное, для каких-то других целей (а даже
> если и поиграть,
> то вряд ли я хочу играть "в кодировки"). BTW если ты не выдаешь в
> заголовке
> charset, то твой документ ОБЯЗАН БЫТЬ в iso-8859-1 ! Все
> остальное -- нарушение
> стандарта и только путает всех.
Хммм... Не надо из меня злодея делать :) Я ж только консультируюсь... В свое
время писал перекодировщик для IIS, который лежит на www.download.ru и там
по стандартам кодировку по умолчанию выдавал - iso-вую, ну так вот... Так
как у нас хостятся всякие _очень_ важные дяди, типа Титова -
www.titov.samara.ru случился такой курьез, вот вчера прям. Звонят из
Администрации города и сообщают что нас чуть ли не посадить хотят... Если б
был какой-нить 50 год, я бы уже не писал это письмо... Короче Рамблер полез
индексировать нашего Титова, так как мой перекодировщик не понял что это за
броузер и на какой операционке - он ему ИСО и выдал, а так как в российском
инете кодировка эта не распространена несмотря на ее статус - официальной,
(В России видимо все так :) ) на Рамблере видимо не замечали что большая
буква "Г" у них переводится ошибочно в "х" (Я скорей бросился на Яндекс
проверять - но там слава богу все нормально). Так вот собсно история...
Кто-то из титовского аппарата пошел искать Титова на Рамблер и набрал
"губернатор Титов" - в ответ ему пришла страница с заголовками типа
ХУбернатор Титов и так по всему тексту... Титов кроме как ХУбернатор нигде
не фигурирует :) Я просто готов поклониться Рамблеру что они букву Б на Й не
заменили в исовой кодировке! А ты про стандарты говоришь!
>
> B> и то что сколько броузеров столько и копий кеша будет,
>
> ЧЕРТА С ДВА !!!! Старые Squid'ы проигнорируют Vary и устроят тебе
> все радости
> жизни, новые не сделают НИ ОДНОЙ копии в кеше ибо им что Vary
> (любой!), что
> Expires в 1970 году -- один черт.
>
> B> но это мелочи по сравнению с геморроем, который возникает с
> кучей демонов
> B> на одной машине, на которой хостятся "продвинутые" кастомеры.
>
> Я понял. Тебе хочется переложить гемор со своих плечей на плечи
> посетителей
> твоего site'а. Остроумное решение, я бы сказал... Не, оно, канечна: У ТЕБЯ
> гемора станет меньше.
>
> B> Подскажите как такую конфигурацию в жизнь воплотить ?
> B> Вместо Expires & Cache-control - Vary.
> B> Как добавить Vary: user-agent ? Просто для всех файлов типа
> text/html ? Или
> B> там свои тонкости ?
> B> Кстати mod_proxy понимает этот заголовок, если нет,
> кеширование отключить
> B> надо будет на фронт-енде, как я понимаю...
>
> B> Поделитесь опытом, плиз.
>
> Опыт РЕЗКО отрицательный. Уж лучше "честный" Expires, чем
> "русская рулетка" с
> Vary ... Уж лучше сходить к ache на http://www.nagual.pp.ru/~ache
> и почитать
> как настроить сервер, чтобы он все честно выдавал в koi8-r (или
> windows-1251),
> чем ЭТО ...
Столько эмоций, столько эмоций! :)
С таким подходом можно любого человека задумывающегося о некой оптимизации
выставить в неприглядном свете :)
Это при том что я прочитал архив списка рассылки и сайт apache.lexa.ru и не
задавал уж сильно тупых вопросов.
------------------------------------
Sergey Polyakov - Chief of WebZavod.
http://www.webzavod.ru
=============================================================================
= Apache-Talk@xxxxxxxxxxxxx mailing list =
Mail "unsubscribe apache-talk" to majordomo@xxxxxxxxxxxxx if you want to quit.
= Archive avaliable at http://www.lexa.ru/apache-talk =
"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.