> Если файла в кеше нет - то откуда взялся ответ 304?
Ответ 304 появился, потому что клиент прислал HTTP_IF_NONE_MATCH, т.е ревалидация была произведена по Etag, в нашем конфиге Nginx есть строка fastcgi_param HTTP_IF_NONE_MATCH $http_if_none_match if_not_empty; она нам нужна, потому что во многих местах используем только клиент (private) кеширования на ETag. Я понял в чем проблема, Nginx при отсутствии своего файл кеша, удаляет хедеры If-Modified-Since и If-None-Match Мы в конфиге востонавливаем клиенский хедер If-None-Match и по нему происходит ревалидации не в зависимости от наличия или отсутствия файла кеша в Nginx, из-за это и проблемы. Ок, как нам правильно поступить, клиенские хедеры If-None-Match нам нужны, потому что по нему происходит ревалидация клиентского приватного кеша, если его отключить тогда мы не сможем ревалидировать клиенский кеш по If-None-Match. Posted at Nginx Forum: http://forum.nginx.org/read.php?21,245951,245967#msg-245967 _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru