On Mon, 18 Feb 2002, Sergey Gershtein wrote:
> >> Речь идет о директиве AccelInvalidate.
> ...
> >> Все хорошо, пока не пришлось обновить
> >> robots.txt на backend. Обновили. Запрашиваем - frontend выдает
> >> закешированную старую версию. Запрашиваем
> >> http://frontend/robots.txt_INVALIDATE. Получаем новое содержимое.
> >> Снова запрашиваем http://frontend/robots.txt - опять старая
> >> закешированная версия. Такое впечатление, что _INVALIDATE запрос к
> >> backend-у делает, отдает клиенту новые данные, но кеш не обновляет.
>
> IS> Я подозреваю, что стоит 'AccelUnlinkNoCached off'.
> IS> Если да, то всё, что описано ниже - это нормально.
> IS> А вот вот выше действительно похоже на баг.
>
> Да, AccelUnlinkNoCached off действительно стоит. Однако в описании
> сказано:
>
> > Когда ответ может быть получен из кэша:
> >
> > 1. Если активна директива AccelNoCache или запрос не вида GET или
> > HEAD, то он передаётся бэкенду и заметка "accel_st" будет равна
> > "PASS".
> > ...
>
> Отсюда, как будто бы следует, что директива AccelNoCache должна
> эффективно запрещать использование кешированной версии. Наверное тогда
> есть смысл уточнить, что речь тут идет о записи в кеш, а на чтение
> эта директива не влияет.
Прошу прощения, я не внимательно прочитал.
AccelNoCache должен безусловно запрещать обращение к кэшу.
Это что-то странное, буду смотреть.
> >> Дальше больше. Добавляю во frontend:
> >>
> >> <Location "/robots.txt">
> ╕
> >> AccelNoCache On
> ╕
> >> </Location>
> >>
> >> Рестартую. Предполагаю, что теперь уж точно про кеш забудет. Не
> >> помогает. Запрос с _INVALIDATE на конце выдает новое содержимое, а
> >> без него - старую версию из кеш.
Игорь Сысоев
=============================================================================
= Apache-Talk@lists.lexa.ru mailing list =
Mail "unsubscribe apache-talk" to majordomo@lists.lexa.ru if you want to quit.
= Archive avaliable at http://www.lexa.ru/apache-talk =